You've at least heard of (if not used) a programming language heavily inspired by Miranda: Haskell. A lot of things about Miranda were really interesting; it reflects modern languages in some ways, but looks completely foreign in other ways. Like Haskell, whitespace was significant; unlike Haskell, it was fast. Really fast. It was one of the pioneering purely-functional languages, but seems to have been mostly forgot…
Are there any more modern functional languages that are as fast or faster?
Miranda released as free software
81–90 of 126 posts
Re: Miranda released as free software
#82Re: Miranda released as free software
#83You've at least heard of (if not used) a programming language heavily inspired by Miranda: Haskell. A lot of things about Miranda were really interesting; it reflects modern languages in some ways, but looks completely foreign in other ways. Like Haskell, whitespace was significant; unlike Haskell, it was fast. Really fast. It was one of the pioneering purely-functional languages, but seems to have been mostly forgot…
I learned about Miranda from the appendix of "The Implementation of Functional Programming Languages" 1987 book by Simon Peyton Jones (IIRC one can find a PDF copy online). I liked it a lot though I had no access to its implementation. Glad to know it is now available. Its implementation is small by today's standards!
Re: Miranda released as free software
#84Here's an idea I have: never close-source any programming language, make 'em free and open from day zero. Languages are not products, but infrastructure, like roads. They benefit and grow from the number of users, not from paywalls. Closed languages tend to fade into obscurity. That's why everyone knows Haskell and nobody knows Miranda, everyone knows Java and nobody Eiffel. I laughed when I read that the author of S…
Re: Miranda released as free software
#85Re: Miranda released as free software
#86Everything is laid out plainly, and you can learn how to work with the language in a matter of minutes.
Even the readme was one of the best I've ever encountered. It makes no undue assumptions and leaves no work up to the reader. It even notes that one may need to make certain edits to the Makefile on certain systems and, if needed, how and where one should do so (I've had to make several other programs in the past that require more tweaking and don't document the possibility or guide the user at all).
The language itself seems slim and elegant so far, but, if nothing else, I'm amazed at the level of quality of the compiler documentation, the manageable size of the source, and the REPL's design--it encourages you to write entire programs from the REPL, by allowing you to direct output to a file and to invoke an editor to modify the current scripts loaded into the environment--all this without the need for special plugins on the editor side; instead of having to invoke the REPL from your editor, your REPL invokes your editor--honestly it seems like the right relationship and now I'm fairly confused why other REPL focused languages don't commonly support this.
Everything comes bundled too--you don't need to go through some gitbook based tutorial docs in your browser to get up to speed--it's all available right from the system itself.
A lot of contemporary programming languages I've used don't have nearly as good of an onboarding experience. It makes me wonder to what extent this is just a rare case of quality work by great programmers and to what extent its symptomatic of what one can deliver with licensing and funding, as opposed to purely open-source contributions largely driven by community interest.
Re: Miranda released as free software
#87Earlier quoted context omitted.
Spent a good while thinking on your question: The best stuff was all proprietary for decades. Even now, we only got Miranda's source code weeks ago. Miranda was written in the 1980s! It's the same for a lot of languages. Nial's the example I usually bring up for one that was freed far too late. People with the domain knowledge that would have helped deal with the complexity of modern systems are all either retired, h…
I think you’re conflating language design with language implementation. If I’m being paid to write a Ruby compiler then ‘keep the language simple’ isn’t an option available to me, is it. And the techniques from the 80s would be absolutely hopeless at compiling and optimising Ruby. A lot of the implementation approaches you’re talking about work brilliantly for a single-pass compiler for a trivial language like Pascal…
Re: Miranda released as free software
#88Re: Miranda released as free software
#89Earlier quoted context omitted.
Haskell was written as academia's response to Miranda's licensing fees. Were Miranda freeware (but not source available or Free Software), it probably would still be well-known. It's still taught in many universities. I certainly agree that most languages should be libre, but clearly it's not necessary for success. k has brought billions of dollars of profit, but is the most proprietary of all languages. C# developer…
Miranda's cost was a big problem, but not the only one. The other core issue that lead to the creation of Haskell was Miranda's license that essentially prohibited using it as a tool for programming language research. For good reason, Turner (Miranda's creator) wanted to avoid the fragmentation of Miranda into different dialects. From [1]: > [T]he easiest way to move forward was to begin with an existing language, an…
Re: Miranda released as free software
#90Earlier quoted context omitted.
Why is compiling to LLVM bytecode insane? Compiling to bytecode and then working with a simpler language has worked for decades since the introduction of BCPL. It's also the approach used by Open64, where you compile to WHIRL which is then optimised with successive passes until you eventually output whatever the architecture can run.
Compiling to bytecode is almost a decade older than BCPL, was the way to go at Xerox PARC and most mainframes that survive to this day.