- 04 Apr, 2005 4 commits
-
-
Christophe Rhodes authored
-
Christophe Rhodes authored
* separate SYNTACTIC-LEXEME from CANONICAL-NAME, which latter is defined also for empty-list and curly-brackets as well as NAMEs and OPs NOTE NOTE NOTE: giving [] and {} canonical names of "[]" and "{}" is in fact wrong, as '[]' and '{}' should not be equal to [] and {}.
-
Christophe Rhodes authored
to work.
-
Christophe Rhodes authored
(uncomment out :around method on display-parse-tree to prevent display of off-the-screen stuff)
-
- 02 Apr, 2005 1 commit
-
-
Christophe Rhodes authored
* PRINT-OBJECT for PROLOG-LEXEMEs, for less pain while debugging; * OPEN-CT production rule from OPEN-CT-LEXEME, because we can; * rework the lexer a bit. Now UPDATE-SYNTAX just invalidates the lex as it invalidates the parse, and UPDATE-SYNTAX-FOR-DISPLAY relexes as far as it needs to; * we need operator-compound-lterm and subclasses, because we cannot create multiple nonterminals from one rule: returning (make-instance 'lterm :term (make-instance 'foo ...)) from a production rule leaves some slots in the FOO unfilled; * note my own bafflement as to why an apparently infinitely-recursive production doesn't recurse infinitely. It can be fixed when needed, but why isn't it triggering? This version still gets various aspects of multiline lexemes wrong, but it's a lot better than before.
-
- 31 Mar, 2005 1 commit
-
-
Christophe Rhodes authored
-
- 27 Mar, 2005 4 commits
-
-
Christophe Rhodes authored
-
Christophe Rhodes authored
-
Christophe Rhodes authored
Delete about 120 lines by defining define-prolog-rule to wrap around ADD-RULE. More known lacunae * [A,B] does not parse properly. * quoted tokens confuse the incremental lexer.
-
Christophe Rhodes authored
Known internal lacunae: * does not handle quotations correctly: ** fails to recognize '' as an escaped quote character (and similarly for other quote characters); ** fails to canonize quoted atoms; will fail to identify the operator ; from the quoted atom ';'; ** does not contain any logic for backslash-escaped data. * does not implement parsing floating point numbers. * comments before directives get italicized. * way too long. Expect some refactoring. Known suboptimal interactions with the syntax framework: * parses the entire buffer at every keystroke; incremental parsing caused a problem at some point and has not (yet) been restored. * displays the entire buffer at every keystroke. * the incremental lexer gets confused in the presence of comments. (see forthcoming mail to climacs-devel)
-