6 ms·
Show me a lisp which is used by enough people to fill a conference in 2018 that isn't implemented in C. Show me a lisp machine which was manufactured any time i
by Sir_Cmpwn 8y ago
Show me a lisp which is used by enough people to fill a conference in 2018 that isn't implemented in C. Show me a lisp machine which was manufactured any time in the past 10 years.
- phoe-krk 8y agoSteel Bank Common Lisp and Clozure Common Lisp are both implemented mostly in Lisp with some C code thrown in. And the European Lisp Symposium always has a large share of Common Lisp programmers.
- giancarlostoro 8y agoWell there's Amber I suppose? Not popular, but not in C at least. https://news.ycombinator.com/item?id=9699065 https://news.ycombinator.com/item?id=9699065 Uses m-expressions instead of s-expressions though.
- aidenn0 8y agoSBCL (a fork of cmucl) is implemented in common lisp and is the most popular common lisp implementation.
- Sir_Cmpwn 8y agohttps://github.com/sbcl/sbcl/tree/master/src/runtime https://github.com/sbcl/sbcl/tree/master/src/runtime
- phoe-krk 8y agoCLOC tells me there's 28391 lines of C and 426525 lines of Lisp in there. Also remember that Lisp has, on average, higher code density than C thanks to advanced macro usage. Pointing to C code in that repository and saying SBCL is implemented in C is like pointing to https://github.com/sbcl/sbcl/blob/master/binary-distribution.sh https://github.com/sbcl/sbcl/blob/master/binary-distribution... and saying that SBCL is implemented in Bash.
- Sir_Cmpwn 8y agoThe runtime is written in C. That's the important bit. Just because the compiler, standard library, etc, isn't - doesn't mean it's not based on C. You cannot use SBCL without a C compiler.
- phoe-krk 8y agoThe installation scripts are written in bash. That's the important bit. Just because the compiler, standard library, etc, isn't - doesn't mean it's not based on bash. You cannot use SBCL without a bash shell. /s Of course you can use SBCL without a C compiler - you simply use a precompiled version. You can't build SBCL without a C compiler.
- Sir_Cmpwn 8y agoShell scripts just slap commands together. You could just be a human interpreter reading the source and get the job done. C is a much more fundamental requirement of SBCL. Much more so than in the way SCBL depends on Python, for example (e.g. it doesn't). Listen, I get that in the ivory tower of lisp you don't like looking at the little C bricks at the bottom, but the fact is that they exist and C is a hugely important language upon which the entire modern world of computing is built.
- phoe-krk 8y agoSure, all of us execute stuff on kernels that are written in either C or C++ or C# or Objective-C, utilizing runtimes that are written in the same languages and calling APIs that are defined by the C application binary interface. That family of languages isn't going anywhere and choosing C instead of raw assembly is often chosen out of practical reasons, such as code maintainability. Still, I find it hard to put an equality sign between "X has a runtime written in C" and "X is written in C".
- Sir_Cmpwn 8y agoI said "implemented" in C. I'd argue that the runtime == the implementation.