|
|
|
|
|
by GeneralMaximus
5374 days ago
|
|
Indeed. Lisp is a simple language that can be completely defined in half a page. A naive implementation takes less than a thousand lines of code. The language is homoiconic, i.e, there's no difference between programs and data -- everything is a list. This enables programmers to perform complex transformations on code using macros. Lisp compilers such as SBCL generate code that is almost as fast as C++. Oh, and the original Lisp as described by McCarthy is strictly rooted in mathematics. If you limit yourself to writing only a subset of Common Lisp/Scheme -- one that emphasizes immutability and recursive functions on lists of symbols -- it is possible to use formal methods to prove the correctness of your code. None of that is true for JS. I don't think Crockford thought his remark through. |
|
1. Modern (JS) runtimes have JITs that can generate code almost as fast as C++.
2. You can write purely functional code in JS.
3. JS has arguably less features than R5RS Scheme, which itself is hard to fit on half a page.