On Thursday, April 19, 2018 at 8:09:24 AM UTC+1,
lars.br...@gmail.com wrote:
Given that ZIL is described as a subset of MDL, is this something that would be
easy or hard to do? (Somewhat open-ended question, sorry.)
On the off chance you are also on Facebook then we have a ZIL coding group and one of the guys is 'porting' Zork from MDL across to ZIL.
Ok - so - others can offer a more complete explanation however my lamens version is as follows.
ZIL is a sub-set of MDL. It's still a LISP language in it's own right, but the Infocom guys took what they needed from MDL in order to create a language that was designed specifically for text adventure games.
There are some differences, to the extent that if you had two source code files for Zork; let's say Zork.zil and Zork.mdl then you would need a separate compiler for each in order to create game files which would then also need their own interpreters to
run on.
ZILF and ZAPF are available at
https://bitbucket.org/jmcgrew/zilf/, with source code for the tools, and ZIL code for a parser and samples, including a port (of a port of a port) of Colossal Cave. The parser probably isn't as robust as the original, but
it uses the same table formats.
ZILF implements a large subset of MDL, enough to use for ZIL macros but not enough to self-host the compiler, which makes it the least faithful of the three Muddle implementations I'm aware of. The other two are Matthew Russotto's Confusion, which
implements enough to run the original version of Zork, and the original MDL105, which is still hosted (along with Zork) on a public TOPS-20 server at twenex.org.
Adam
--- SoupGate-Win32 v1.05
* Origin: fsxNet Usenet Gateway (21:1/5)