From 390f1e368cfdc5011e9eb9af76d2fb44cd8dc0b2 Mon Sep 17 00:00:00 2001 From: Leo Tenenbaum Date: Sat, 7 Dec 2019 18:21:03 -0500 Subject: fixed something weird going on with the tokenizer that might be a bug in clang --- docs/01.html | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 docs/01.html (limited to 'docs/01.html') 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 @@ +

A first program

+ +

The main function in toc corresponds to the main function in C. This function is called when your program is run. So, this is a valid toc program which does nothing:

+ +

+main ::= fn() { +}; +

+ +

It declares a constant, main, 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 fn main() { ... }).

+ +

Assuming you have compiled the compiler (see README.md for instructions about that), you can compile it with

+ +

+toc <your filename> +

+ +

You will get a file called out.c, 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.

-- cgit v1.2.3