xref: /netbsd-src/external/bsd/tre/dist/TODO (revision 63d4abf06d37aace2f9e41a494102a64fe3abddb)
1TODO:
2
3 * Documentation
4
5   - Finish the reference manual of the API.
6   - Finish the manual describing the syntax and semantics of regexps.
7   - Write a description of the algorithms used.  There's already my
8     Master's Thesis, but it's not TRE-specific, and it's a
9     thesis, not an algorithm description.
10   - Write man page for tre regexp syntax.
11
12 * POSIX required features
13
14   - Support for collating elements and equivalence classes.  This
15     requires some level of integration with libc.
16
17 * New features
18
19   - Support for GNU regex extensions.
20     - word boundary syntax [[:<:]] and [[:>:]]
21     - beginning and end of buffer assertions ("\`" and "\'")
22     - is there something else missing?
23   - Better system ABI support for non-glibc systems?
24   - Transposition operation for the approximate matcher?
25
26 * Extend API
27
28   - Real-time interface?
29      - design API
30      - return if not finished after a certain amount of work
31      - easy for regexec(), more work for regcomp().
32
33
34 * Optimizations
35
36   - Make specialized versions of matcher loops for REG_NOSUB.
37
38   - Find out the longest string that must occur in any match, and
39     search for it first (with a fast Boyer-Moore search, or maybe
40     just strstr).  Then match both ways to see if it was part of
41     match.
42
43   - Some kind of a pessimistic histogram filter might speed up
44     searching for approximate matching.
45
46   - Optimize tre_tnfa_run_parallel to be faster (swap instead of
47     copying everything?  Assembler optimizations?)
48
49   - Write a benchmark suite to see whan effects different
50     optimizations have in different situations.
51