strangest systems I've sent email from
Chris Hanson
cmhanson at eschatologist.net
Fri Apr 29 03:44:59 CDT 2016
On Apr 27, 2016, at 9:55 AM, Liam Proven <lproven at gmail.com> wrote:
>
> Apple goes its own way, but has forgotten the truly innovative
> projects it had pre-NeXT, such as Dylan.
Dylan, despite being created by a bunch of Symbolics (and other Common Lisp) folks, was actually less innovative than it might sound these days. It was basically a Scheme-style Lisp-1 with a cleaned-up and pervasive CLOS that intentionally eschewed a metaobject protocol in favor of easy compilation and optimization. Which then had an infix syntax tacked on in the belief that it was all the parentheses that turned people off to Lisp, instead of the inability to reason in a vacuum about what assembly any arbitrary line of code would generate.
So the folks putting together Dylan spent A TON of effort on producing an infix-syntax Lisp-1 with CLOS which included support for a full Scheme-style syntax-transforming hygienic macro system. Nobody doing commercial Mac development wanted it because it was still a Lisp in Pascal/C-ish clothes, instead of the better C that they had been asking for. (And eventually got, in the form of Objective-C.)
The people who were not going to use Dylan were *never* going to use it, so it wasn’t really worthwhile to spend all the effort that they (and Carnegie Mellon, and Harlequin, and so on) did trying to appease them. That time, effort, and money would’ve been better spent actually shipping a PowerPC version of the prefix-syntax Dylan language, environment, and frameworks at a time when PowerPC was just coming onto the market along with enough RAM and CPU to make language choice matter a whole lot less. That would’ve enabled interesting and potentially game-changing applications, instead of just being a curiosity.
-- Chris
-- who is interested in buying a copy of the PowerPC version
of Apple Dylan DR1 that Digitool shipped on contract to Apple,
if anyone has it
More information about the cctalk
mailing list