Dialog doesn’t seem to be under active development any longer, but it is open-source, and I’m tentatively poking through the compiler code to try to get a sense of how it works. It is unfortunately very sparsely-commented, but I’m trying to gauge which changes would be easy, difficult, or nigh-impossible to make.
From the creator Linus Åkesson’s comments, he’s considered:
- Removing the inline style predicates, replacing them entirely with spans
- Broadening the limits on numbers, and allowing negative numbers
- Adding a built-in predicate for splitting unrecognized words into a recognized prefix and an unrecognized suffix, which would let the library handle removable endings
- Making numbers be a subtype of words
As for my personal wish list:
- Supporting more styling on Z-machine, such as text and background color
- Allowing more than 128 non-ASCII characters in I/O
- Support for a 32-bit backend like Glulx, which would effectively remove memory limits
But what about the rest of y’all? Are there particular issues you’ve run into with Dialog that you hope could eventually be changed?