summaryrefslogtreecommitdiff
path: root/docs/01.md
blob: 816f3e6885b36d197d3404555104753d849887ac (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
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.