Skip to main content

Posts

Showing posts from July, 2019

ISHML: API for Parser IF (JavaScript)

Version 1 of ISHML has been released! ISHML stands for Interactive Story grapH Management Library, but call it “Ishmael.” Its intent is to facilitate the creation of interactive fiction in JavaScript and is intended for client-side applications running in modern browsers. The ISHML library is a fluent API with straightforwardly named properties and methods, many of which are chainable. Eventually, ISHML will address all aspects of creating interactive fiction. For now, though, ISHML is just a really flexible and powerful recursive descent parser with backtracking, which is capable of returning multiple interpretations of a given input text. In ISHML, you create a parser by defining a grammar. A grammar is a set of nested rules that describes the syntax tree to be generated during parsing. The structure of the grammar mirrors the structure of the syntax tree. Rules are, in spirit, a JavaScript adaptation of BNF notation. There are many, many ways to configure the rules. If y