Inform7 target interpreter language

A spin-off from this discussion.

Regarding that Inform6 is an object-oriented language and Inform7 is a rule-based language, is z-code/glulx ideal as interpreter language or could a more suitable set of opcodes be defined?

Zcode/Glulx are both very low-level and have no impact on the OO-vs-rule-based architecture. That’s all built on top.

The biggest architectural impact is that I decided to keep the Glulx stack outside of main memory (same as Z-code), which means it can only store 32-bit words, no larger data structures. This forces the I7 compiler to jump through some hoops to manage local variables that are struct types. (Texts, lists, stored actions, etc.)

3 Likes

Notably the Å-machine, for Dialog, is not as low-level; it’s basically Dialog’s IR (the intermediate representation that high-level Dialog code gets compiled into before then being compiled to Z-machine). So it’s unlikely that any language other than Dialog will ever be compiled to it.

3 Likes