4 ms·
Until I can write something like Ableton Live in any Lisp I'll pass, thanks.
by cageface 13y ago
Until I can write something like Ableton Live in any Lisp I'll pass, thanks.
- Jtsummers 13y agoI'm trying to figure out why you posted this, it just seems like a non sequitur. Setting aside, for a moment, the issue of performance on signal processing tasks, from a GUI perspective there's no reason that an interface akin to Ableton Live shouldn't be producible in Common Lisp, Clojure or any currently maintained Scheme implementation. If you're dependent on 3rd party C/C++ libraries for the signal processing, many schemes are pretty good for FFI, I've not used Clojure FFI or Common Lisp FFI so I can't comment much on them. Clojure seems like it would be as good or at least no worse than Java for interfacing with existing C/C++ libraries. Common Lisp FFI is going to be implementation dependent (like with scheme). I do know that Chicken Scheme's FFI is pretty easy. I made a wrapper for a subset of GLUT and OpenGL, and adding additional components as they became relevant to the project was straightforward. Regarding performance, I won't comment on Common Lisp or Clojure, I never measured their performance for numeric tasks. Scheme, however, with something like Chicken Scheme has good performance, and again FFI is straightforward so making a C module to do some heavy lifting is not unreasonable.
- cageface 13y agoClearly the signal processing/audio side of the app can't be written in Lisp, and that actually makes up a pretty large chunk of the code. And having to bridge everything over FFI really isn't very practical for a UI of this complexity either for performance and code overhead reasons. Being able to access your internal data structures directly without jumping through FFI/translation hoops is a big win for both efficiency and code maintenance. So Lisp zealots can ding my comment all they want but it doesn't change the fact that intelligent, informed programmers all over the world continue to reject Lisp for very practical reasons that the true believers of the Lisp community will never understand.
- route66 13y agoIn the meantime you might want to notate some ideas: http://scorecleaner.com/ http://scorecleaner.com/ (uses also C++) or do yourself a bit of algorithmic composing (http://www.symboliccomposer.com/page_main.shtml, http://www.symboliccomposer.com/page_main.shtml,. since the 90's). And together we wait impatiently for http://opusmodus.com/ http://opusmodus.com/ to be available (down for maintenance right now).