DavidKinder / Inform6

The latest version of the Inform 6 compiler, used for generating interactive fiction games.
http://inform-fiction.org/
Other
199 stars 32 forks source link

Grammar version 3 #290

Closed erkyrath closed 2 months ago

erkyrath commented 2 months ago

This PR is built on top of https://github.com/DavidKinder/Inform6/pull/289 . It will be easier to read if you merge that one first.

(They don't collide, it turns out. But it was easier to set up the PRs this way.)

This implements GV3 (Z-code only). GV3 is not well-tested and should be considered experimental.

construct_storyfile_z() has code to generate the grammar table, adjectives table, and preactions table.

list_grammar_line_v3() is implemented so that --trace verbs works right.

A test implementation of the I6 parser for GV3 is in https://github.com/erkyrath/Inform6-Testing/blob/newgv3-ex/i6lib-611gv3/parserm.h . I've compiled Advent.inf with it and tested some verbs. (Not a complete run-through.)

erkyrath commented 2 months ago

Implements https://github.com/DavidKinder/Inform6/issues/277 .