4 ms·
(I am referring to Lisp here as mostly the Common Lisp and the Scheme variety) There is also the issue where are a lot of areas like UX and tooling requires b
by sansnomme 7y ago
(I am referring to Lisp here as mostly the Common Lisp and the Scheme variety)
There is also the issue where are a lot of areas like UX and tooling requires boring engineering work that no wants to put in. Dependency management, language servers, static analysis etc.
Scheme is stuck in academia; its creators are more interested in forcing language constructs like Continuation Passing Style onto end users rather than fixing ecosystem problems. Despite having a multitude of standards, every Scheme has to roll its own dependency manager. Chicken libraries aren't directly compatible with Gambit and good luck with Racket's licensing.
Quicklisp is relatively recent and a lot of books that are considered "standard reading" are so old that they don't mention it. Simple things like exporting a binary using save-image-and-die etc. don't work properly, easy Rust/Go style cross platform compilation support is almost non-existent and the whole process is extremely flaky in general. Stuff like Roswell improves the UI a bit but the underlying foundation is extremely barebones. Now most of these problems would go away with proper funding. But the major users of Lisp tend to be small niche companies in areas like natural language processing and quantum computing. They are not Sun, they are not Google. They never had to onboard a tremendous amount of new people in a short time. They have their pick of a community with too much supply and not enough demand. The people in charge of using them are happy to stay within the safe walls of Emacs and tradition, expecting all newcomers to do the same. They are not gonna drop a couple million of investment to fund tooling and infrastructure. Even with Clojure where you have new editors and tooling the language authors are infamous for being reluctant to address user needs and concerns at a core level. Forget about a language whose ANSI standard has never seen an update for 2 decades and whose improvements are fueled by a hodgepodge of mildly incompatible language extensions and macros. Sure there are two new compiler projects in CL that are coming along nicely, but they are not dedicating the attention to UX that languages like Elixir do. The CL21 project looks nice on paper but never caught on, and everyone is happy to push for more compiler implementations instead. A lot of the compilation and ecosystem stuff that are really important such as mobile, Web, GUIs etc. are tied to proprietary software. Sure the situation is improving with electron and I heard that the Qt binding is slightly better these days but the language situation resembles more to closed sourced relics like Embarcadero Delphi than the highly vaulted insane-productivity-startup-secret-weapon that HN seem to give the impression of.
- ryukafalz 7y ago>good luck with Racket's licensing Is the LGPL particularly challenging to deal with?
- neilv 7y agoWhat's the barrier with Racket's licensing? It's currently LGPL (looks like v3). https://docs.racket-lang.org/license/index.html https://docs.racket-lang.org/license/index.html https://github.com/racket/racket/blob/master/racket/src/COPYING_LESSER.txt https://github.com/racket/racket/blob/master/racket/src/COPY...
- soegaard 7y agoAdding to Neil's answer: Racket is currently being relicensed as MIT / Apache 2. https://github.com/racket/racket/issues/1570 https://github.com/racket/racket/issues/1570 It's a slow process though. Not because people object to relicensing, but some people are no longer in contact with the Racket community and they can be difficult to find.
- scottlocklin 7y agoEveryone wants an excalibur sword for their tool at work; I think most lisps are more like hitachi vibrators precisely for the reasons you say. I'm sure lispworks, corman and the rest of the proprietary lisps have some cool GUI tooling and other useful practical bits nobody in open source common lisp land wants to build (instead preferring to fuck around with yet another compiler). Of course, so does Delphi or any other proprietary language. The real key to developer productivity is someone did the shit work for you and wrapped it in a useful way.