vaporware
2009-07-22 05:44:00 UTC
Some have tried, but none have succeeded... until now. I give you
ZILF. Not a toy or a high-level translator, but a compiler to turn the
language of the Implementors into Z-code, complete enough to write a
working game from the ground up.
Download: http://hansprestige.com/zil/zilf-0.2.zip
(Includes .NET/Mono binaries for the ZILF compiler, an updated version
of the ZAPF assembler and manual, and a sample game, "Cloak of
Darkness". If no serious issues are found, I'll upload this to the IF
Archive this week.)
The dialect of ZIL that this program understands was pieced together
and inferred from many sources, including MDL manuals that predate
Infocom as well as Infocom-era documents that have been released
since. The result is a language that incorporates a subset of MDL --
though not enough to run the mainframe Zork -- as well as features
specific to the Z-machine, which I believe is a fair description of
the original ZIL as well. I've tried to make this retro experience as
authentic as possible, and I believe anyone who can master ZILF would
have felt right at home with the original ZILCH.
A sample game is included, but there is no language documentation yet.
You might want to read the older documents about MDL and ZIL that
apply to varying extents:
The MDL Programming Language (if-archive/infocom/info)
Learning ZIL (http://www.xlisper.com/zil.pdf)
ZIP: Z-language Interpreter Program (http://www.xlisper.com/zip.pdf)
... but note that many MDL features are not implemented, and many of
the high-level "library" features in Learning ZIL would need to be
reimplemented in a new library for ZILF.
Usage notes:
* This is a command line application. After extracting the zip file,
cd to the sample directory and type "..\zilf cloak.zil" followed by "..
\zapf cloak.zap" to produce cloak.z3.
* If you start ZILF with no parameters, you'll enter interactive mode,
which evaluates MDL expressions as you type them. Type <QUIT> to exit.
Run "zilf /?" for a list of options.
* V3 is the default and has gotten the most testing, but Cloak can be
compiled to V4 and V5 as well: edit the <VERSION ZIP> line in
cloak.zil to read <VERSION EZIP> or <VERSION XZIP>. V1 and V2 are
unsupported. V6 and V7 don't work at this point, but V8 might be
close.
Possibilities for future development:
* More complete parser and "standard library"
* Port a larger sample game (like Advent)
* Compile to Glulx
vw
ZILF. Not a toy or a high-level translator, but a compiler to turn the
language of the Implementors into Z-code, complete enough to write a
working game from the ground up.
Download: http://hansprestige.com/zil/zilf-0.2.zip
(Includes .NET/Mono binaries for the ZILF compiler, an updated version
of the ZAPF assembler and manual, and a sample game, "Cloak of
Darkness". If no serious issues are found, I'll upload this to the IF
Archive this week.)
The dialect of ZIL that this program understands was pieced together
and inferred from many sources, including MDL manuals that predate
Infocom as well as Infocom-era documents that have been released
since. The result is a language that incorporates a subset of MDL --
though not enough to run the mainframe Zork -- as well as features
specific to the Z-machine, which I believe is a fair description of
the original ZIL as well. I've tried to make this retro experience as
authentic as possible, and I believe anyone who can master ZILF would
have felt right at home with the original ZILCH.
A sample game is included, but there is no language documentation yet.
You might want to read the older documents about MDL and ZIL that
apply to varying extents:
The MDL Programming Language (if-archive/infocom/info)
Learning ZIL (http://www.xlisper.com/zil.pdf)
ZIP: Z-language Interpreter Program (http://www.xlisper.com/zip.pdf)
... but note that many MDL features are not implemented, and many of
the high-level "library" features in Learning ZIL would need to be
reimplemented in a new library for ZILF.
Usage notes:
* This is a command line application. After extracting the zip file,
cd to the sample directory and type "..\zilf cloak.zil" followed by "..
\zapf cloak.zap" to produce cloak.z3.
* If you start ZILF with no parameters, you'll enter interactive mode,
which evaluates MDL expressions as you type them. Type <QUIT> to exit.
Run "zilf /?" for a list of options.
* V3 is the default and has gotten the most testing, but Cloak can be
compiled to V4 and V5 as well: edit the <VERSION ZIP> line in
cloak.zil to read <VERSION EZIP> or <VERSION XZIP>. V1 and V2 are
unsupported. V6 and V7 don't work at this point, but V8 might be
close.
Possibilities for future development:
* More complete parser and "standard library"
* Port a larger sample game (like Advent)
* Compile to Glulx
vw