3 ms·
Is that some kind of angle bracket lisp? Can anyone shed more light of zil files?
by z3phyr 8y ago
Is that some kind of angle bracket lisp?
Can anyone shed more light of zil files?
- Jabbermonkey 8y agoTake a look at the Z-machine wikipedia page. It has some good background. There's also a link to "Learning ZIL" in the external links section. https://en.wikipedia.org/wiki/Z-machine https://en.wikipedia.org/wiki/Z-machine
- WorldMaker 8y agoIt's exactly a Lisp derivative/fork. Zork was originally written in MDL [0], a Lisp derivative in use on MIT's mainframes (that in turn went on to inspire parts of Scheme). When the Zork team left college to form Infocom, they built ZIL to port Zork to home computers, based on their experience of MDL, and their needs for their Z-Machine virtual machine. [0] https://en.wikipedia.org/wiki/MDL_(programming_language) https://en.wikipedia.org/wiki/MDL_(programming_language)
- lispm 8y ago> Scheme don't know. But Lisp Machine Lisp and then Common Lisp.
- brlewis 8y agoI've seen EQUAL? in some of the code snippets. I can believe that inspired Scheme predicates.
- taradinoc 8y agoYeah, MDL used the question mark suffix like Lisp used "p".
- lispm 8y agoYes. But I think that's relatively minor. From 'The Evolution of Lisp' Steele/Gabriel: > MDL also introduced through example the use of a final ? in a name to connote a predicate ... Lisp Machine Lisp would pick up the lambda lists and the locatives, and would adapt the evaluation and splicing markers in backquote, though the evolution of the concept passes through Conniver where it is refined into a form very similar in appearance and effect as in Lisp-Machine Lisp, but in fact the implementation is quite different. Scheme would pick up the use of a trailing “?” for predicates. MDL had a multitasking facility that would reappear in various forms in Lisp-Machine Lisp, Conniver, and various implementations of Common Lisp. Scheme got the '?'. LML got complex arglists, locatives, markers for evaluation/splicing in backquote, multitasking.
- taradinoc 8y agoHmm, which evaluation and splicing markers is it referring to? MDL doesn't have quasiquoting, but it has "segments" that expanded while evaluating a structure (prefix a form with "!", and the result is spliced into the structure), and reader macros expanded while parsing source code (prefix a form with "%" and the result is inserted, or "%%" and it's discarded).