Filter:  
Apache  
C  
C#  
C++  
CGI  
Linux  
Node  
ObjC  
Python  
React  
Unity  
Unreal  
iOS  
jQuery  

Andrew Plotkin: Portfolio

Contact

Filter:  
Apache  
C  
C#  
C++  
CGI  
Linux  
Node  
ObjC  
Python  
React  
Unity  
Unreal  
iOS  
jQuery  

Technology: Node


Glulx

Interactive fiction platform (1998-present)

CJavaScriptjQueryElectronNode
A screenshot of a window showing the opening moves of Adventure.

I designed a spiritual successor to Infocom’s Z-machine, which was originally created for the home computers of the 1980s. Glulx has a 32-bit architecture and a pluggable I/O system. The latter allows text games to behave consistently across many kinds of UIs — native GUI apps, web pages, Slack/Discord bots, even headless modes for automated game-testing.

I implemented the first Glulx interpreter in C. Since then I’ve ported it to ObjC (for iOS) and JavaScript (for the web). I then wrapped the JS version in Electron to turn it into a portable downloadable app.

On the compiler side, I extended Graham Nelson’s Inform 6 Z-machine compiler to generate Glulx game files from the then-standard Inform language. This has been carried forward to the modern Inform 7 language, which is still in use.