5 ms·
Lisp evolved into ML and Haskell and these have influenced professional programming enormously over the last few decades. Or are you advocating we ditch all pro
by grumpyprole 4y ago
Lisp evolved into ML and Haskell and these have influenced professional programming enormously over the last few decades. Or are you advocating we ditch all progress and go back to Lisp? Have you tried an ML such as OCaml? It has built-in cons lists, convenient symbol manipulation and macros.
- bslatkin 4y agoWhy do you think so many Lisp fans (e.g., Norvig) went on to use Python instead of those ML alternatives?
- grumpyprole 4y agoNorvig is a teacher and author who wants to reach the widest audience possible. So in his case, it was either Java or Python.
- charlieflowers 4y agoNorvig wrote an article or post where he deemed Python to be “an acceptable lisp” (or something like that, I may not have it exactly right).
- grumpyprole 4y agoHardly a ringing endorsement! Python is certainly succinct and expressive like Lisp (when his alternative is Java). ML was designed to be a better Lisp.
- _19qg 4y agoML wasn't designed as a better Lisp. It was designed as a 'better' (and statically typed) functional programming language for writing proofs in a theorem prover. The theorem prover and then also the first ML version was written in Lisp. That was the motivation for the first version of ML.
- grumpyprole 4y agoI did not mean to imply it was a Lisp. It was designed to solve the same problems as lisp, i.e. symbolic manipulation; and was used to rewrite code originally written in Lisp.
- lispm 4y agoML was at first a domain specific language for writing/assisting proofs: a) maths-like notation, b) functional, c) statically typed, ... Lisp did only do b) to some extent. It was and still is common to develop languages as internal or external domain specific languages on top of Lisp. ML was such an example. Often these languages then are/were ported away from Lisp to a specialized (and possibly smaller/more efficient) implementation. Thus Lisp served as a prototyping environment.
- JonChesterfield 4y agoInfluenced but didn't evolve into. For one thing ML and Haskell have a totally different approach to types.
- grumpyprole 4y agoML was designed in the 70s by Robin Milner to replace all the LISP code he had. Just like LISP it was designed for symbolic manipulation. They are far more similar than you are giving them credit for; and usually recognised as part of the same family tree. The System F calculus also has a "totally different approach to types" but it evolved from the Lambda calculus. ML and Haskell are based on System F and its successors.
- falcolas 4y agoFrankly, yes, I wouldn't mind going back to boring old lisp. Particularly when confronted with Java or Javascript. I also have no real desire to dive into strongly typed functional languages - see the "dynamic" part of the original title. And all of those modern functional languages are as fringe (or even more fringe) than Lisp is. I wish this wasn't the case, but let's be honest: programming languages that appeal to mainstream developers and companies will always optimize for development teams of wildly varying skill.
- sidlls 4y agoWhy does every thread about functional programming and/or lisp have to have this not-so-subtle dig at developers who don't use them? Do you really think developers who prefer functional programming or lisp(s) are smarter on average than other developers?
- substation13 4y agoNo smarter, but they likely care a great deal more about programming.
- sidlls 4y agoI doubt that very much.
- grumpyprole 4y ago> I also have no real desire to dive into strongly typed functional languages - That's a big shame. But don't knock it until you've tried it. > And all of those modern functional languages are as fringe (or even more fringe) than Lisp is. I'm not convinced Lisp is more popular anymore. I've spent the last 10 years being a full time Haskell and OCaml programmer. The killer application is compilers and associated tooling. Almost no one is choosing Lisp for this today. And why would they? > but let's be honest: programming languages that appeal to mainstream developers Where do you think the newer mainstream languages are getting e.g. algebraic datatypes and pattern matching from?