Haskell, Lisp, Clisp, Scala, Erlang
Hello Folk.
Excuse me, I read some wiki about Lisp, Haskell, Clisp and Erlang, Are they Academic language? Why Lisp and its family used today? A friend told me that, He launches a project with Haskell about one day but if he wants use C\C++ for doing it, It takes 6 months, is it correct? Can you tell me the Advantages and Disadvantages؟ Thank you. |
Lisp is a wonderful language...
and so is C. But they have different goals. It depends on what you want to do, they are different tools. Code:
|
bigearsbilly's post was slightly elliptic - I assume he was referring to Lisp being a bit closer to the way you think about problems (a claim often put forward by "functional programming" languages, such as Haskell) compared to C/C++, as well as the fact that you need to compile C/C++ code before you run it, while Lisp is interpreted (making C++ faster in general).
Haskell is certainly used for real-world applications (aurora and xmonad being two which spring to mind) but its use is rare compared to languages such as C/C++ or Java. I think if a project would take 1 day to do in Haskell and 6 months to do in C++, then that says far more about the programmer's relative familiarity with Haskell compared to C++ than anything else - I consider it highly unlikely that such a dramatic difference in implementation time exists at any level, for someone who is reasonably competent in both languages. |
Quote:
LINQ, .NET's data querying library (which AFAIK is still very widely used), is heavily based on Haskell. Haskell has a couple of extremely interesting and performant web frameworks available for it: snap and yesod. And if you count Javascript as part of the "Lisp family" (which it is to a large extent), then it's obviously used everywhere. And Snark, what is this aurora project that you refer to? |
LISP is widely in CAS (Computer Algebra System).
CLISP is a well known implementation of LISP. SBCL is a faster than CLISP implementation, bey requires a LISP for bootstrapping when built from source - that's why I build both. |
Quote:
|
There are hundreds of computer programming languages out there which are, somewhere, still in use. Even extensively.
|
3DWings, a 3D modeller is written in Erlang.
jlinkels |
All answers are correct but In your opinion, Lisp is good for learn or Haskell or Scala?
|
Quote:
Quote:
(see e.g. http://www.tiobe.com/index.php/conte...pci/index.html, though its accuracy is questionable) |
Quote:
|
Quote:
|
Quote:
|
Quote:
One big difference is that, as an FP language, the programmer focuses more on what the program "is" that what it "does". Instead of listing steps of things to do to solve a problem, you define your functions, and then your program resolves itself (like a big equation). And the strict (but dynamic) and polymorphic type system allows you to abstract programming concepts away to an insanely high level. Consequently, you can basically encode the logic of your program into the structure of the code as you write it, rather than doing that as a before-thought or after-thought. Haskell is completely pure, meaning that IO operations never happen inside functions, unless the function is purposefully tainted as an IO function. A pure function (one that simply does calculations) can never be treated like an impure function (one that has side effects) and vice versa. Therefore, a function will never do "IO" things, like changing a global variable, or printing to stdout, unless you were expecting it to do so. And of course, it has higher order functions, currying, and partial application. This means you can create a new function from another function by passing in only a few of the arguments it needs (this is really helpful). Also, you can easily pass in functions to other functions (functions and data are all the same to Haskell). So you could, for example, easily create a function that reads lines from a file, and then pass another function into it, which it could use to parse those lines. There's more that could be said, but I'll just end by praising Haskell as one of the few programming languages out there that isn't inherently boring, and it allows you to rise to very great heights in programming knowledge and theory. |
Can you compare Haskell with Clojure or Scala?
|
All times are GMT -5. The time now is 08:04 AM. |