diff --git a/todo.md b/todo.md index fb31ba3d..6cf5d01c 100644 --- a/todo.md +++ b/todo.md @@ -1,18 +1,20 @@ TODO ==== -* Complete javascript and golang grammars -* Make separator character set configurable, not hard-coded to whitespace +Backlog +------- + +* Complete the golang grammar +* Implement the remainder of the incremental parsing algorithm: reuse parse tree after the edit +* Add API for iterating over a document's tokens +* Add API for locating a node given a character position +* Add API for locating a node's parents and siblings +* Make parse error handling more robust * Add special lexical behavior for indentation-aware languages -* Return a useful error when grammar contains invalid regex patterns -* Create working parser when grammar contains no error productions -* Create working parser when grammar contains unused symbols +* Speed up grammar compilation + +Icebox +------ + * Implement Pager's [Practical general method](http://link.springer.com/article/10.1007%2FBF00290336) for reducing the size of the LR(1) parse table -* Speed up grammar compilation -* Implement the remainder of the incremental parsing algorithm: reuse parse - tree after the edit -* Create easy way to publish grammars as npm packages -* Add simple selector engine for syntax trees -* Make ordering of parse and lex tables deterministic, so that generated - code doesn't keep changing on every commit