NdK wrote:
Been confused by the error: it pointed to the last line of the chain, not to the *first* closing brace followed by a keyword, forming an invalid entry. BTW, it stays unclear why the keyword can't be on the same line with the closing brace. Can't figure out unlang's grammar in EBNF.
It doesn't use ABNF.
Man page is somewhat contraddictory: first it says "The language consists of a series of entries, each one one line." but then allows multi-line entries calling 'em blocks...
And you conveniently deleted the NEXT sentence: Each entry begins with a keyword.
But, reading again the man page, another doubt arises: in a chain, an else/elsif references to the "immediately preceding 'if' entry" or to the "last evaluated 'if' entry" (supposing elsif equivalent to "else\nif")? Being it read line-by-line it could easily be the first (static binding), but my test suggests the "common" behaviour (once one is true, all the following aren't evaluated). But I could be wrong...
Then you don't understand how "if" and "else" work. It works the same way as Perl, C, and other languages. Alan DeKok.