OpenDylan sheds some parentheses in 2025.1 update

4 months ago 7

OpenDylan is a Lisp without all the parentheses – just as John McCarthy originally intended for LISP-2.

OpenDylan 2025.1 is the latest release from the OpenDylan project and contains several handy enhancements. There is a new LSP plug-in, lsp-dylan, so you get syntax highlighting and code-completion in compatible editors. The command line, project management tool has been renamed from dylan to deft, to reduce ambiguity. Plus bugs fixed, libraries updated, and documentation improved.

What's significant here, we feel, is that these are small but useful improvements and the activity shows that the language is alive and being developed. Dylan (short for "Dynamic Language") has been around for a third of a century, and it's an interesting language that is unlike almost anything else.

The origins of Dylan lie in the Apple Newton project, as The Register described back in 2013. The Newton device Apple delivered under John Sculley was remarkable – The Reg FOSS desk owns two – and it led Apple to Acorn's ARM chip, the mighty little processor inside the world's first mass-market RISC computer, the Acorn Archimedes. The Newton was unbelievably powerful for an early 1990s pocket device, which is part of why this vulture was deeply disappointed by the ReMarkable e-ink tablet, slim and lovely as it is.

The original plan for the Newton, though, was something far more ambitious: a pocket Lisp Machine, as we mentioned in the War of the Workstations. Although in the end Apple went with a simpler OS written in C++ and NewtonScript, happily the Dylan language was released by Apple and continues as a FOSS project. One of the original Apple engineers, Mikel Evins, has talked about Dylan a number of times, including to Rainer Joswig and on Hacker News.

Lisp is a remarkable programming language, and one of the things about it that Lisp enthusiasts praise is its identical structure for code and data. Lisp is short for "List Processing," and Lisp code is written as lists, so a Lisp program can manipulate its own code. It's sometimes called "homoiconic," although that's a tricky term.

Although its enthusiasts extol its power, to outsiders, Lisp seems to contain lots and lots of parentheses in strange, unfamiliar places.

That wasn't the original plan of Lisp's creator, John McCarthy. He intended to follow it up with LISP 2, which would have a more conventional ALGOL-like syntax. (There's a history of LISP 2 [PDF] here for a more in-depth version.) McCarthy's LISP 2 never happened, but there have been multiple other attempts to create more conventional-looking flavors of Lisp. An early one was Vaughan Pratt's CGOL – the 1977 working paper [PDF] is quite readable. One of the co-developers of the original EMACS, David Moon, also co-developed Dylan at Apple, and later published his plan for PLOT, which stands for "Programming Language for Old Timers." More recently, he was working on Julia, another homoiconic language.

This is what sets Dylan apart. It got implemented, released, it still exists, and is still being maintained.

The OpenDylan project has a quite readable Introduction to Dylan as well as the Dylan Reference Manual. There is also a history of its development on Wikipedia. It quotes project lead Oliver Steele with this tantalizing mention:

As Stephen Diehl (who is occasionally quoted on The Register, including by the FOSS desk) put it on Twitter X a few years ago:

C syntax is magical programmer catnip. You sprinkle it on anything and it suddenly becomes "practical" and "readable".

— Stephen Diehl (@smdiehl) April 22, 2017

When Apple announced a new language to replace Objective-C in 2014, we briefly entertained a wild hope it was Dylan, but no: it was the much more conventional Swift. Who knows, maybe if Dylan had used {curly braces} it would have been a big hit? ®

Read Entire Article