ZILF 0.9 released

Version 0.9 of ZILF is here! Highlights include easier setup for non-Windows platforms, compatibility with the unearthed Infocom source, and lots of bug fixes.

Get it at zilf.io.


Thank for developing a Linux Arm version. The binaries for zilf and zapf worked right off the bat on my RPi 4. It is nice that “mono” is no longer necessary. I have read the release notes on the repository site. You have been busy adding enhancements, making it more compatible with Inform games and fixing bugs.

Very nice.



Awesome, glad to have confirmation that it works on ARM.


Will you be releasing new documentation? The Zil document isn’t bad, but I prefer a reference guide to complement the incremental learning method

@Jeff_Nyman has been writing some tutorials: ZIL Retro - Repository for Learning ZIL and ZILF

For reference material, there’s:

  • ZILCourse.pdf, an Infocom document written by Marc Blank, which Jeff found and uploaded to the repo linked from that thread (not to be confused with Learning ZIL, written by Steve Meretzky)
  • The MDL Programming Language: MDL is both the “top level” language of ZIL, in which macros are written and from which all the definition functions like ROUTINE are called, and the inspiration for the “inner” language in which routines themselves are written
  • ZILF’s compiler integration tests, library tests, and sample games: if you just want to know how to use some named thing, grepping the ZILF source code will generally turn up at least one tested example

These resources and more are linked from the wiki at http://faq.zilf.io, which would also be a good place for assembling ZILF-specific reference material, but I don’t think I’ll be able to do much of that myself in the near future.


As a note on Jesse’s first point, I’m actively updating the ZIL Retro repository. Specifically around building up the Cloak of Darkness example.

My documentation is admittedly really rough looking right now but I’m doing a first pass and then I’ll be refining the material. I’m thinking then I’ll try to build up some examples from the Infocom material. I’m also trying to intersperse quotes from the Learning ZIL guide as well.


Two quick questions:

  • Does/will ZILF support mixed-case commands and variables? Right now I feel like MY CODE IS SHOUTING AT ME.
  • This thread doesn’t have the brightly-colored and bolded ‘ZIL’ tag, so it doesn’t show up in searches for that. …huh. I guess that’s a statement, not a question.
  1. Does anyone know what page I go to if I want to see threads I’m tracking? I can’t seem to locate it.

Okay, that’s a third question. No wait -

Like MDL, ZILF distinguishes between upper and lower case (at least when compiling code from a file).

There’s a command line option to change that, but you’ll have to pass it every time you compile: zilf -ci foo.zil

This option may be changed or removed in the future, because it’s an ugly hack that contradicts both the specification of MDL and the spirit of Lisp – the right way to do it would be to have separate controls for how atoms are read and printed instead of how they’re compared.

Hm. I guess I asked the wrong question, then. Because I like that it supports mixed case. What I guess I was really asking is to not have to TYPE ALL OF MY COMMANDS IN ALL CAPS. It’s hard on my Shift key finger.

-ci will let you type your code in lowercase, which I think is what you want…

Other than that, I’d just recommend using caps lock. :wink:

1 Like

I recently began using the beta version of the Raspberry Pi OS (64 bit).

Zilf 0.9 runs as expected in the standard RPi OS which has a 64 bit kernel but a 32 bit userland.

When trying to run the Zilf arm version on the 64 bit version, it complains that libstdc++.so.6 is unavailable and refuses to load.

libstdc++.so does have a link to libstdc++.so.6 but for some reason it is not working.

Any suggestions?

Thank you.

I have been unable to get Zilf 0.9 working on the Raspberry Pi OS 64 beta. I was unable to resolve the libstdc issues.

However, I was able to revert to Zilf 0.8 after installing “mono” and executing zilf.exe and zapf.exe via a sudo mono command. Zilf 0.8 seems to work without issue until the 64 bit beta version of RasPi OS becomes more mature.

Upon further experimentation, even Zilf 0.8 does not compile correctly. In relations to Zilf, RasPi OS 64 beta is not yet ready.

Really cool to see this new project! I used Guncho back around 2016 and really loved what you did with it, so I’ll check this out. By the way, I was poking around noticed that the source code for Guncho is gone now. The Bitbucket seems to be deleted. Do you have any goals to bring it back, or would you be willing to share the source code with a fellow developer?

Didn’t mean to hijack your thread, I just wanted to bring it up in the context of your new thing. Thanks in advance! :slight_smile:

The Bitbucket repository is archived here: Mercurial Bitbucket Archive | jmcgrew/guncho archive

And the old wiki contents are here: GitHub - aodendaal/guncho-wiki: Extract of Guncho Wiki from Web Archive

I may put a proper repo up again someday.

1 Like

Consider uploading the most recent versions on the IF Archive.

1 Like

Fully concur and agree. Jesse, pls upload to IF archive :slight_smile:

1 Like