News: 1750932841

  ARM Give a man a fire and he's warm for a day, but set fire to him and he's warm for the rest of his life (Terry Pratchett, Jingo)

OpenDylan sheds some parentheses in 2025.1 update

(2025/06/26)


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

[1]OpenDylan 2025.1 is the latest release from the OpenDylan project and contains several handy enhancements. There is a new [2]LSP plug-in, [3]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 [4]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.

[5]

The origins of Dylan lie in the Apple Newton project, as The Register [6]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 [7]Acorn Archimedes . The Newton was unbelievably powerful for an early 1990s pocket device, which is part of why this vulture was [8]deeply disappointed by the ReMarkable e-ink tablet , slim and lovely as it is.

[9]

[10]

The original plan for the Newton, though, was something far more ambitious: a pocket Lisp Machine, as we mentioned in [11]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 [12]to Rainer Joswig and [13]on Hacker News .

Lisp is a [14]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 [15]sometimes called "homoiconic," although that's a [16]tricky term .

[17]

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

That wasn't the original plan of Lisp's creator, John McCarthy. He intended to [20]follow it up with LISP 2 , which would have a more conventional ALGOL-like syntax. (There's a [21]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 [22]CGOL – the 1977 [23]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 [24]plan for PLOT , which stands for "Programming Language for Old Timers." More recently, he was [25]working on Julia , another homoiconic language.

[26]Microsoft dangles extended Windows 10 support in exchange for Reward Points

[27]Mozilla rolls out Firefox 140 with ESR status and fresh features

[28]Xlibre forks to the rescue – but Kubuntu gives X11 the boot

[29]Tiling terminal multiplexers for the console connoisseur

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 [30]Introduction to Dylan as well as the [31]Dylan Reference Manual . There is also a [32]history of its development on Wikipedia. It quotes [33]project lead Oliver Steele with this tantalizing mention:

I believe that Mike Kahl, who designed the infix syntax (and implemented the parser and indenter for it), was trying to make it look like Pascal. At the time (1991?), that probably looked like a better bet than it does today in the world of languages that have mostly converged on the use of punctuation marks as punctuation.

I had actually implemented a more C-like (that is, braces) syntax for Dylan, but dropped it when we hired Mike in order to work on the IDE…

As Stephen Diehl (who is [34]occasionally quoted on The Register , including [35]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) [36]April 22, 2017

When Apple [37]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? ®

Get our [38]Tech Resources



[1] https://opendylan.org/release-notes/2025.1.html

[2] https://microsoft.github.io/language-server-protocol/

[3] https://package.opendylan.org/lsp-dylan/

[4] https://package.opendylan.org/deft/

[5] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/front&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=2&c=2aF1ume0E2WNlGjpC8taIHwAAAVA&t=ct%3Dns%26unitnum%3D2%26raptor%3Dcondor%26pos%3Dtop%26test%3D0

[6] https://www.theregister.com/2013/09/17/20_years_of_the_apple_newton/?page=4

[7] https://www.theregister.com/Print/2012/06/01/acorn_archimedes_is_25_years_old/

[8] https://www.theregister.com/2023/03/16/remarkable_launches_type_folio_keyboard/

[9] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/front&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=4&c=44aF1ume0E2WNlGjpC8taIHwAAAVA&t=ct%3Dns%26unitnum%3D4%26raptor%3Dfalcon%26pos%3Dmid%26test%3D0

[10] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/front&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=3&c=33aF1ume0E2WNlGjpC8taIHwAAAVA&t=ct%3Dns%26unitnum%3D3%26raptor%3Deagle%26pos%3Dmid%26test%3D0

[11] https://www.theregister.com/2023/12/25/the_war_of_the_workstations/

[12] http://lispm.de/lisp-based-newton-os

[13] https://news.ycombinator.com/item?id=21846706

[14] https://www.marktarver.com/bipolar.html

[15] https://www.expressionsofchange.org/dont-say-homoiconic/

[16] https://www.expressionsofchange.org/homoiconicity-revisited/

[17] https://pubads.g.doubleclick.net/gampad/jump?co=1&iu=/6978/reg_software/front&sz=300x50%7C300x100%7C300x250%7C300x251%7C300x252%7C300x600%7C300x601&tile=4&c=44aF1ume0E2WNlGjpC8taIHwAAAVA&t=ct%3Dns%26unitnum%3D4%26raptor%3Dfalcon%26pos%3Dmid%26test%3D0

[18] https://xkcd.com/224/

[19] https://www.expressionsofchange.org/homoiconicity-revisited/

[20] https://ieeexplore.ieee.org/document/8267589

[21] https://www.mcjones.org/dustydecks/wp-content/uploads/lisp2history.pdf

[22] https://en.wikipedia.org/wiki/CGOL

[23] https://dspace.mit.edu/bitstream/handle/1721.1/41951/AI_WP_121.pdf

[24] http://users.rcn.com/david-moon/PLOT3/

[25] https://github.com/JuliaLang/julia/pull/6910

[26] https://www.theregister.com/2025/06/25/microsoft_free_esu_tier/

[27] https://www.theregister.com/2025/06/24/firefox_140_esr/

[28] https://www.theregister.com/2025/06/24/mixed_news_for_x11/

[29] https://www.theregister.com/2025/06/24/tiling_multiplexers_survey/

[30] https://opendylan.org/intro-dylan/

[31] https://opendylan.org/books/drm/Language_Overview

[32] https://en.wikipedia.org/wiki/History_of_the_Dylan_programming_language

[33] https://osteele.com/products/apple-dylan/

[34] https://www.theregister.com/2022/01/07/cryptocurrency_crimes/

[35] https://www.theregister.com/2021/12/15/web3_apparently_the_next_generation/

[36] https://twitter.com/smdiehl/status/855827759872045056?ref_src=twsrc%5Etfw

[37] https://www.theregister.com/2014/06/02/apple_aims_to_speed_up_secure_coding_with_swift_programming_language/

[38] https://whitepapers.theregister.com/



Name Parsing Ambiguity

An_Old_Dog

Upon seeing the title of this article, in my mind I heard,

"How does it feeeeeel, to be on your own? Like a rolling stone ..."

They should have named it, "DyLan".

Re: Name Parsing Ambiguity

evadnos nibor

((dy)(lan)) shirley?

Re: Name Parsing Ambiguity

Liam Proven

> ((dy)(lan)) shirley?

Oh come on. The _whole point_ was that it gets rid of all the brackets.

*sigh*

Re: Name Parsing Ambiguity

Liam Proven

> "How does it feeeeeel, to be on your own? Like a rolling stone ..."

> They should have named it, "DyLan".

Bob of that ilk sued over the name. Apple settled out of court.

You're 33 years late to the gag I'm afraid.

Re: Name Parsing Ambiguity

Antony Shepherd

You mean it wasn't named after the hippy rabbit in The Magic Roundabout?

Swiz!

Re: Name Parsing Ambiguity

Philo T Farnsworth

They should've changed the name to Zimmerman . 1

Amusing that a guy who borrowed his stage name from an actual poet, one Dylan Thomas, would have the bloated ego temerity to object.

Figures.

_______________

1 [1]Wikipedia: Bob Dylan

[1] https://en.wikipedia.org/wiki/Bob_Dylan

Ran out of memory

Gene Cash

So am I reading the PDF right, that LISP-2 stalled when they ran out of memory on their development machine?

Shame, that.

Re: Ran out of memory

FlaSheridn

Running out of memory was also a problem even on the C++-based NewtonScript Newton; a Dylan-based one would presumably have had it even worse. (OTOH, Apple could have shipped more RAM at the same price if it had merely stopped including floppies as well as a CD in the Newton box…)

"`What's been happening here?' he demanded.
`Oh just the nicest things, sir, just the nicest things.
can I sit on your lap please?'"
"`Colin, I am going to abandon you to your fate.'
`I'm so happy.'"
"`It will be very, very nasty for you, and that's just too
bad. Got it?'
`I gurgle with pleasure.'"

- Ford and Colin the robot.