I will be updating this issue as we make progress. Please feel free to take down good first issues here and in the issue tracker.
Interpreter Tasklist
- Regex automaton memoization.
- String/num value memoization.
for-each loops. May be complicated to get right due to the configurable order, so I'm putting it off a bit.
- Record splitting modes of
FPAT and single-byte naïve memchr.
getline instructions, proper print/print redirections.
- General I/O in the event loop and VM dispatch.
- Wire in lexer/parser in the interpreter for robust indirect call parsing + built-in funs disambiguation, libloaded funs disambiguation.
- Built-in vars auto-setting.
- Maybe custom instructions for
SYMTAB-, FUNCTAB-, PROCINFO-related operations because they're probably too magical, and emulating them as plain arrays would probably be too costly anyway.
- Range patterns.
- Etc.
Various
- Some parser differentials I've got written down and should get to fixing. God I hate AWK's grammar.
- More robust
--pretty-printing, with more precedence disambiguation and default args expansion for built-ins.
- Support
in for lookups of arrays of arrays (trivial-ish).
- Library loading (via
libloading) and C/FFI function calls.
- Debugger.
- Get
clap to behave properly.
- Sanity.
I will be updating this issue as we make progress. Please feel free to take down good first issues here and in the issue tracker.
Interpreter Tasklist
for-eachloops. May be complicated to get right due to the configurable order, so I'm putting it off a bit.FPATand single-byte naïvememchr.getlineinstructions, properprint/printredirections.SYMTAB-,FUNCTAB-,PROCINFO-related operations because they're probably too magical, and emulating them as plain arrays would probably be too costly anyway.Various
--pretty-printing, with more precedence disambiguation and default args expansion for built-ins.infor lookups of arrays of arrays (trivial-ish).libloading) and C/FFI function calls.clapto behave properly.