[CM] What motivated the change from CL to Scheme?

Orm Finnendahl orm.finnendahl at selma.hfmdk-frankfurt.de
Thu Nov 9 08:42:04 PST 2023


Am Donnerstag, den 09. November 2023 um 08:41:02 Uhr (-0500) schrieb
Michael Gogins:
> 
> For what it's worth, if you are looking to use specifically Common Lisp for
> computer-based composition, Common Music in Lisp continues to be maintained
> (sort of). I myself have a repository that includes many impressive
> extensions to Common Music by Drew Krause at
> https://github.com/gogins/csound-extended-nudruz. It's a bit of a mess that
> spits out lots of warnings and takes its time loading, but it does
> definitely work and it does much more (thanks to Drew) than the original
> Common Music in Lisp. The Lisp version of Common Music is also hosted at
> https://github.com/andersvi/cm2.

 maybe it's worth mentioning in this context that there is an actively
maintained version of the Common Lisp version of cm2 here as well:

https://github.com/ormf/cm

The github account also hosts many extensions to cm regarding realtime
work (using incudine), additional packages for import and export
from/to svg, sfz, a maintained version of the CL version of Fomus, gui
extensions for browser based interaction, live coding packages, SPEAR
like Fourier Analysis/Resynthesis etc.

I did the transition from Common Lisp to Scheme around the time, Rick
changed to scheme (around 2000 I guess), mainly due to the easier
setup and teaching of Scheme to students, but went back to Common Lisp
some years later.

Although I always really liked scheme and still do, the major
motivation to go back to Common Lisp was the speed of sbcl compared to
guile back then, the availability of many high quality libraries in
the Common Lisp world and the expressiveness and flexibility due to
the multitude of paradigms already implemented in the standard. In the
meantime, the Common Lisp IDE and other things have evolved quite a
bit and quicklisp, sly/slime, changes to CFFI and especially incudine
(which is a real gamechanger) put me in a situation similar to what
Bill describes concerning S7. But my use case is much more high level
than what Bill needs (which might explain the difference of choices).

--
Orm


More information about the Cmdist mailing list