ZIL is basically a domain-specific language on top of MDL, the Lisp-like language that was used to write the original mainframe Zork. The developers went on to start Infocom and split Zork into three parts that were small enough to run on home computers, creating ZIL and the Z-machine in the process.
The source code for mainframe Zork is still available, but the subset of MDL implemented by ZILF isn't complete enough to play it. Matthew T. Russotto has written a MDL interpreter to do just that: http://www.ifarchive.org/indexes/if-archiveXprogrammingXmdlX...
The same author has also written many great blog posts walking through the history of interactive fiction http://www.filfre.net/about-me/sitemap/
His article about Ultima IV got 97 comments the last time it was submitted here: https://news.ycombinator.com/item?id=8020954
Good stuff. More generally, if you want a short (<1hr) and amusing example of IF, try this: http://pr-if.org/play/violet/