News for hackers. Stuff that matters.
Re:Steel Bank Common Lisp by JonChesterfield on Saturday July 01, 2023 @07:18AM (#36548914)
My impression is that language innovation in lisp dialects is largely stagnant at present.

Common lisp is flexible enough that it's reasonable for projects to stay within the immutable standard, so only library progress happens.

Scheme has given up on the minimal side to the design and become over-obsessed with complicated macros and static compilation. I suppose that's change, if not progress.

Clojure I can't say much about. I like the hashed trie and do not consider the JVM connection a feature. Maybe that is still changing over time.

Racket is still doing its thing, but the current push (Rhombus) seems to mostly be about removing S expressions.

Kernel is a different lisp. Tragically we lost the author too young. Kernel deletes most of the limitations and cruft of _scheme_. It would benefit from a sbcl-level of development effort which doesn't seem to be happening.

I'm interested anything else strange from the lisp world if people have references.

Innovating in the C derivatives continues at pace of course.

Re:Steel Bank Common Lisp by KingMob on Saturday July 01, 2023 @08:28AM (#36549379)
Clojure innovation seems to have largely slowed down, at least from the language maintainers. The last few years have seen lots of little bug fixes, expanding the CLI tool, and better interop with later versions of Java, but nothing major.
Re:Steel Bank Common Lisp by pfdietz on Saturday July 01, 2023 @10:23AM (#36550429)
There is language innovation in Common Lisp, but it's either things that need to be in the standard (example: package local nicknames) or in improved implementation of things in the standard.

The latter one I point to often is the problem of efficiently compiling a dynamic language, where (for example) the offsets of slots in objects can be changed at run time, or (another example) where the set of methods for a generic function can change at run time.

See Robert Strandh's paper in https://european-lisp-symposium.org/static/proceedings/2021.... (page 72)

Re:Steel Bank Common Lisp by JonChesterfield on Saturday July 01, 2023 @02:06PM (#36553074)
Great paper, thank you for the reference!
Re:Steel Bank Common Lisp by lispm on Saturday July 01, 2023 @12:14PM (#36551672)
There are also innovations in implementations. A recent one was the development of CLASP, a Common Lisp implementation with deep C++ / LLVM integration.

https://clasp-developers.github.io

"Clasp is a new Common Lisp implementation that seamlessly interoperates with C++ libraries and programs using LLVM for compilation to native code. This allows Clasp to take advantage of a vast array of preexisting libraries and programs, such as out of the scientific computing ecosystem. Embedding them in a Common Lisp environment allows you to make use of rapid prototyping, incremental development, and other capabilities that make it a powerful language."

Re:Steel Bank Common Lisp by JonChesterfield on Saturday July 01, 2023 @01:54PM (#36552925)
That description sounds great but the docs are less compelling. The integration is you can write a C++ file that exposes individual functions to lisp, https://clasp-developers.github.io/clbind-doc.html.

There doesn't seem to be any way to feed C++ headers into clasp and get out template instantiations accessible to lisp. It looks like SWIG or pybind but you write the shims yourself, and it's function pointer based so templates are wrapped one instantiation at a time.

Garbage collection in the docs is a one paragraph stub which suggests you're on your own for lifetime management across the languages.

Cool thing to exist. Seamless interoperation is either overselling it or the docs are out of date.

Re:Steel Bank Common Lisp by lispm on Saturday July 01, 2023 @02:51PM (#36553688)
There is a bit more to it. It allows one to create mixed C++ / Lisp projects with memory management, CLOS methods for C++ classes, CLOS subclass of C++ classes, Lisp and C++ gets compiled to LLVM-IR, debug source output mixing compiled C++ and Lisp frames, ...
Re:Steel Bank Common Lisp by hajile on Saturday July 01, 2023 @12:24PM (#36551798)
The only innovations in the C languages are in making it more like Lisp or working around the deficiencies of a syntax with no macros by adding more syntax on top.
Re:Steel Bank Common Lisp by gilch on Tuesday July 04, 2023 @03:09PM (#36591286)
> I'm interested anything else strange from the lisp world if people have references.

Hissp just released version 0.4.0. It compiles Python tuples to Python expressions and has multiple readers with different characteristics, not all of which are based on S-expressions.

https://github.com/gilch/hissp/discussions/182