summaryrefslogtreecommitdiffstats
path: root/txr.1
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2011-10-06 22:20:16 -0700
committerKaz Kylheku <kaz@kylheku.com>2011-10-06 22:20:16 -0700
commit5ab2b46a0f5d6c73b6e81a0efc47c29d29928966 (patch)
tree3d1c0c229308c7c6da8ee84938124275e3beb814 /txr.1
parent9776ad45285a46cacd5fc7288489d374f6480f37 (diff)
downloadtxr-5ab2b46a0f5d6c73b6e81a0efc47c29d29928966.tar.gz
txr-5ab2b46a0f5d6c73b6e81a0efc47c29d29928966.tar.bz2
txr-5ab2b46a0f5d6c73b6e81a0efc47c29d29928966.zip
Extending syntax to allow for @VAR and @(...) forms inside
nested lists. This is in anticipation of future features. * lib.c (expr_s): New symbol variable. (obj_init): expr_s initialized. * lib.h (expr_s): Declared. * match.c (dest_bind): Now takes linenum. Tests for the meta-syntax denoted by the system symbols var_s and expr_s, and throws an error. (eval_form): Similar error checks added. Also, hack: do not add file and line number to an exception which begins with a '(' character; just re-throw it. This suppresses duplicate line number addition when this throw occurs across some nestings. (match_files): Updated calls to dest_bind. * parser.l (yybadtoken): Handle new token kind, METAVAR and METAPAR. (grammar): Refactoring among patterns: TOK broken into SYM and NUM, NTOK introduced, unused NUM_END removed. Rule for @( producing METAPAR in nested state. * parser.y (METAVAR, METAPAR): New tokens. (meta_expr): New nonterminal. (expr): meta_expr and META_VAR productions handled.
Diffstat (limited to 'txr.1')
0 files changed, 0 insertions, 0 deletions