Implementation resources
This page lists some resources for learning how to implement array languages.
Interpreting
- Let's build a simple interpreter for APL series (currently incomplete) on Mathspp Blog
- Slides and talk by Rob Pike about implementing ivy
- parse commentary in the dfns workspace
- Parsing and Execution in the J dictionary
Compiling
Because traditional APL does not have a context-free grammar, the language must be modified or restricted in some way to allow it to be compiled. K and BQN have context-free grammars, making them immediately suitable for compilation.
- BQN implementation notes
- Aaron Hsu's tree manipulation talks describe a technique used in Co-dfns.
- Compiling APL to JavaScript describes some implementation decisions made in ngn/apl