diff options
author | Leo Tenenbaum <pommicket@gmail.com> | 2019-12-07 18:21:03 -0500 |
---|---|---|
committer | Leo Tenenbaum <pommicket@gmail.com> | 2019-12-07 18:21:03 -0500 |
commit | 390f1e368cfdc5011e9eb9af76d2fb44cd8dc0b2 (patch) | |
tree | d299c8e4360a68038f575c16d8083275cb1046f0 /docs/01.html | |
parent | 9c44be7b25d61450808e918c14b8dfff49a78a8a (diff) |
fixed something weird going on with the tokenizer that might be a bug in clang
Diffstat (limited to 'docs/01.html')
-rw-r--r-- | docs/01.html | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/docs/01.html b/docs/01.html new file mode 100644 index 0000000..633295b --- /dev/null +++ b/docs/01.html @@ -0,0 +1,18 @@ +<h3>A first program</h3> + +<p>The <code>main</code> function in toc corresponds to the <code>main</code> function in C. This function is called when your program is run. So, this is a valid toc program which does nothing:</p> + +<p><code> +main ::= fn() { +}; +</code></p> + +<p>It declares a constant, <code>main</code>, which is a function with an empty body. Note that the syntax for declaring functions is the same as the syntax for declaring constants (it isn't something like <code>fn main() { ... }</code>).</p> + +<p>Assuming you have compiled the compiler (see <code>README.md</code> for instructions about that), you can compile it with</p> + +<p><code> +toc <your filename> +</code></p> + +<p>You will get a file called <code>out.c</code>, which you can then put through your C compiler to get an executable file which does nothing. Congratulations! You've written your first toc program.</p> |