From 60f7c4f7272079e635010e464d8ce3a3a427f97f Mon Sep 17 00:00:00 2001 From: CCGKyle Date: Wed, 20 Jan 2021 10:33:41 -0500 Subject: Add specification to the repo. To be updated as the language evolves. --- spec/compiler/compiler.txt | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 spec/compiler/compiler.txt (limited to 'spec/compiler/compiler.txt') diff --git a/spec/compiler/compiler.txt b/spec/compiler/compiler.txt new file mode 100644 index 0000000..dbc64c0 --- /dev/null +++ b/spec/compiler/compiler.txt @@ -0,0 +1,18 @@ +The "compiler" of the TNSL language is formed of several parts, each discussed +in their own file. + + 1) Parsing + + 1a) The tokenizer - chews up .tnsl files and spits out tokens + 1b) The file resolver - interperets import commands and creates a tree of files to compile + 1c) The definer - + 1d) The AST generator - indexes tokens and provides some rudimentary syntax checking + + 2) Validation + + 2a) The expander - expands pre-processor commands and macrosoperations + 2b) The validator - checks all requirements for all functions and expressions are valid + + 3) Translation + + 3a) ??? \ No newline at end of file -- cgit v1.2.3