lisper15 days ago
MCL lives on today as Clozure Common Lisp:
kalleboo15 days ago
This actually seems like a more interesting link than the OP https://ccl.clozure.com/history.html
Although if anyone wants to run it, you could download it from the op and drop the file onto one of the emulators on https://infinitemac.org (they run directly in your browser, no download needed)
msephton15 days ago
You can search Macintosh Garden directly within Infinite Mac. No need to download anything outside of that environment. https://blog.persistent.info/2024/11/infinite-mac-macintosh-...
p_l15 days ago
In my experience emulators do not run MCL properly
msephton15 days ago
In what way?
p_l15 days ago
MCL crashing on startup, whether 68k or PPC versions, have yet to test 68k on popular ppc mac emulators.
I expect that running MCL on QEMU emulating PPC Mac running MacOS 8 or 9 should work, however.
msephton15 days ago
Thanks!
nxobject15 days ago
Watch out, though - I think running MCL crashes some emulators like Mini vMac the last time I checked.
kazinator15 days ago
Clozure Common Lisp is excellent. It generates fast code and small images.
I used Clozure Common Lisp for the Tankan kanji learning program, which uses a browser interface to a service application, the latter being written in CCL.
I used MS Visual C++ to make the system notification are ("tray") icon program to control the service.
The licensing back-end runs on CLISP as a CGI interface, and the same server-side program also serves as an administrative command-line utility, where I can manipulate the the license database.
bifftastic15 days ago
Anyone know the latest on the Apple Silicon port of CCL? The new mailing list doesn't seem to have a publicly-accessible archive.
diskzero15 days ago
You can see the Github issue covering this here: https://github.com/Clozure/ccl/issues/356
There was quite a bit of discussion about this a couple of years ago. OpusModus[1] investigated supporting CCL on M1, but wasn't confident that it could be accomplished, and instead ported their product to LispWorks.
lisper15 days ago
That effort is somewhere between stalled and dead. Matt Emerson was funded to work on it, but that funding fell through a few months ago. I made him an offer to resume the work but he hasn't accepted it and hasn't said why. So unless there is someone else out there who is capable of doing this, it's not looking good.
bifftastic15 days ago
Thank you for your reply. It's quite a sad situation.
mark_l_watson15 days ago
I didn’t think an Apple Silicon port would ever happen.
I would love to be wrong about that!
[deleted]15 days agocollapsed
behnamoh15 days ago
The closest thing to image based programming in Common Lisp (which doesn't exist as such in Clojure, Scheme, etc.) is having a tmux session with ipython open! I can save the session and come back to it later with the state of the program still correctly loaded. It's fantastic.
Jupyter Notebooks should have this feature because loading huge datasets upon loading a ipynb really doesn't make sense, but alas...
Y_Y15 days ago
Could you say how you save the ipython sessions? I'm aware of dill.dump_session but haven't tried it. I also would love to use something like CRIU, but find it doesn't play well with external accelerators like GPUs.
For the moment I'm stuck opening lots of tmux sessions and just re-running from history if I mess up the state.
behnamoh15 days ago
I save the tmux session using ctrl-a,ctrl-s and it automatically saves the ipython state as well as my neovim.
opan15 days ago
This sounds like tmux-resurrect and not a built-in feature. Similarly, C-a is the default GNU screen prefix, C-b is the default prefix for tmux (though this is a fairly common rebind for people who wanted it to work more like screen).
behnamoh15 days ago
I remapped ctrl-b to ctrl-a, and yes, I use tmux-resurrect.
Y_Y14 days ago
Thank you for that necessary context.
lelanthran15 days ago
I use a terminal split in vim which runs in screen.
Same effect, except that I can send various commands from the other vim split to the terminal using slime.
Started working like this when i was writing and prototyping a lot of SQL code... ran SQL in the terminal split and used the other split for the SQL file.
baq15 days ago
Python is a lisp just lists are replaced with dicts, after all ;)
I wonder if an AWS elastic lisp image service would be something lispers would use. Probably won’t live to see anything like it.
pjmlp15 days ago
It is only missing having proper lambdas instead of one liners, JIT compilation, redo code after breaking into debugger, saving REPL into an image, ...
Julia is more Lispy than Python will ever be.
Ironically what AWS nowadays offers for Java and .NET based lambdas (SnapStart) is something similar to Smalltalk/Common Lisp images, yet another thing that traces back to their roots (Java being influenced by Objective-C/Smalltalk, and .NET origins due to J++ lawsuit).
Iwan-Zotow14 days ago
> proper lambdas instead of one liners
that has simple solution - walrus thingy
behnamoh15 days ago
In that case Elixir is also a Lisp where you use do-end instead of parentheses :)
heck, any language that has an AST would be a Lisp according to your definition..
musicale14 days ago
Though it's easy to write a tiny Lisp interpreter in ~100 lines of Python (or JavaScript, etc.):
hilldude15 days ago
Interesting context and history here: http://basalgangster.macgui.com/RetroMacComputing/The_Long_V...
mark_l_watson15 days ago
After using my Xerox 1108 Lisp Machine for several years, I gave it away to someone else where I worked when I was able to put a faster Motorola processor in my 1984 Mac, bought Macintosh Allegro Common Lisp, and ported utilities like ISI Grapher that I needed. Great programming environment that I used for many practical projects that were financially impactful for my company.
ralphc15 days ago
The conventional wisdom around here is that Lisp (and Smalltalk) are looked upon so fondly because they were so far ahead of what else we had back then, both in terms of the language and development environments, but other languages have caught up over the years.
Do you think there is a modern non-Lisp language and environment that gives you something close to the productivity you had with Common Lisp back then?
mark_l_watson14 days ago
Because of modern library and infrastructure improvements, I would say most modern programming languages.
JKCalhoun15 days ago
I wonder if any 68K Mac apps written in Lisp were shipped in the day.
mark_l_watson15 days ago
Not MACL, but I shipped a million dollar in sales product using ExperLisp that I wrote for the original Mac.
Using MACL: when I was on a DARPA Neural Network Tools Advisory panel, I did all my NN prototyping in Common Lisp with Macintosh Allegro Common Lisp. Resulting code, that I converted to C and C++ was used in the bomb detector we built for the FAA, and became a commercial product.
p_l15 days ago
Non trivial amount, though usually niche ones AFAIK.
Some, like Piano (aircraft analysis suite) moved to other platforms when OSX essentially forced a rewrite anyway