Can someone explain to me the main differences between a language like Common Lisp and Haskell? I'm planning on learning on a purely functional language this year and I've narrowed it down to Haskell and CL but I don't know which to pick. Haskell has sort of been winning due to my friends knowing it and using it. If you have any resources as well, please let me know. I don't know if this is the right place to post th…
New Common Lisp website
31–40 of 54 posts
Re: New Common Lisp website
#32Re: New Common Lisp website
#33Can someone explain to me the main differences between a language like Common Lisp and Haskell? I'm planning on learning on a purely functional language this year and I've narrowed it down to Haskell and CL but I don't know which to pick. Haskell has sort of been winning due to my friends knowing it and using it. If you have any resources as well, please let me know. I don't know if this is the right place to post th…
Common Lisp is not a purely functional language. The most caracteristic feature of Lisp in general is that, its whole syntax is the literal representation of one of it's core datatypes, the linked list. This allows for creating idioms of arbitrary complexity and reusable abstractions with ease, one a tiny kernel. Another wording of this is that the Lisp family of languages represent their programs as data that those…
"Your average Lisp process is code running on a Lisp VM, and the VM allows you to modify the running code"
Thank you. As a non-Lisper, this is probably the clearest explanation of Lisp's qualities I've ever read.
Re: New Common Lisp website
#34Re: New Common Lisp website
#35I love (sarcastically) how the Start here -> First Steps does not include any instructions on how to get a Common Lisp installed and running on your computer.
The link is above the 'Tutorials' heading. Maybe it needs some custom style to make it stand out.
Re: New Common Lisp website
#36Can someone explain to me the main differences between a language like Common Lisp and Haskell? I'm planning on learning on a purely functional language this year and I've narrowed it down to Haskell and CL but I don't know which to pick. Haskell has sort of been winning due to my friends knowing it and using it. If you have any resources as well, please let me know. I don't know if this is the right place to post th…
Re: New Common Lisp website
#37Learning Scheme with SICP right now, and there's a question I'm now pondering: how does one choose between Common Lisp, Scheme, Racket, Clojure and others? Is there a good comparison of Lisp-derived languages somewhere?
For SICP, stick to Scheme. The ideas are valuable in themselves, and IME it’s easier to learn the author’s obscure language than to translate to another language. When you’re struggling to learn something, I prefer not to waste time figuring out whether it’s not working because it wasn’t translated properly or because I made a mistake in the procedure. Especially when SICP uses Scheme’s tail call optimization, which few other Lisps have. Racket is one of the few.
Other than that, it’s just a matter of personal taste and practical considerations. I especially like how Clojure and ClojureScript run well on dominant legacy platforms, the JVM and the browser, but you could choose otherwise.
Re: New Common Lisp website
#38Can someone explain to me the main differences between a language like Common Lisp and Haskell? I'm planning on learning on a purely functional language this year and I've narrowed it down to Haskell and CL but I don't know which to pick. Haskell has sort of been winning due to my friends knowing it and using it. If you have any resources as well, please let me know. I don't know if this is the right place to post th…
Common Lisp is not a purely functional language. The most caracteristic feature of Lisp in general is that, its whole syntax is the literal representation of one of it's core datatypes, the linked list. This allows for creating idioms of arbitrary complexity and reusable abstractions with ease, one a tiny kernel. Another wording of this is that the Lisp family of languages represent their programs as data that those…
Just for others reading this; this is correct, but note that it is typically not a bytecode based VM like the JVM, but rather running native code.
Re: New Common Lisp website
#39Re: New Common Lisp website
#40Can someone explain to me the main differences between a language like Common Lisp and Haskell? I'm planning on learning on a purely functional language this year and I've narrowed it down to Haskell and CL but I don't know which to pick. Haskell has sort of been winning due to my friends knowing it and using it. If you have any resources as well, please let me know. I don't know if this is the right place to post th…
To say it more correctly (hopefully): Haskell contains a purely functional sub-language. It also has impure parts (provided by monads). Just like most programming languages have pure and impure parts. The difference is that Haskell employs the type system to segregate the two parts.
Since we're going for precision, I note that monads have nothing to do with impurity (https://wiki.haskell.org/What_a_Monad_is_not#Monads_are_not_...). It just happens that IO, in which the impurity lives, is a monad. It is also a functor (in the category-theory, not Prolog or C++, sense), but that doesn't make functors impure, and it doesn't make monads impure (or impurity inherently monadic: https://wiki.haskell.org/What_a_Monad_is_not#Haskell_doesn.2...).