diff options
author | Leo Tenenbaum <pommicket@gmail.com> | 2020-01-29 11:37:25 -0500 |
---|---|---|
committer | Leo Tenenbaum <pommicket@gmail.com> | 2020-01-29 11:37:25 -0500 |
commit | 426d9c9977489f7adba7f4b554e8466a47e520f1 (patch) | |
tree | fd5e83ef2e7c8e16fd66f2784736337170ab32de /docs | |
parent | d79ac12de0ceb4ff82f486c26608b754b145f0fc (diff) |
made #foreign a part of the language
Diffstat (limited to 'docs')
-rw-r--r-- | docs/00.html | 7 | ||||
-rw-r--r-- | docs/01.html | 4 |
2 files changed, 5 insertions, 6 deletions
diff --git a/docs/00.html b/docs/00.html index b8c961c..cd0c352 100644 --- a/docs/00.html +++ b/docs/00.html @@ -30,7 +30,7 @@ x := 0.0; when no type is specified, it defaults to an <code>int</code>, whereas <code>0.0</code> defaults to a <code>float</code>.</p> -<p>Here are all of toc’s builtin types and their ranges of values:</p> +<p>Here are all of toc's builtin types and their ranges of values:</p> <ul> <li><code>int</code> - A 64-bit signed integer (always), -9223372036854775808 to 9223372036854775807</li> @@ -49,14 +49,13 @@ defaults to a <code>float</code>.</p> <li><code>char</code> - A character. The specific values are technically platform-dependent, but usually there are 256 of them.</li> </ul> - <p>At the moment, it is not technically guaranteed that <code>f32</code>/<code>float</code> is actually 32-bit and that <code>f64</code> is actually 64-bit; they are platform dependent. Perhaps someday there will be a version of toc which does not compile to C, where that could be guaranteed.</p> <p>To make declarations constant, use <code>::</code> instead of <code>:</code>. e.g.</p> <p><code> -x ::= 5+3; +x ::= 5+3; <br /> y :: float = 5.123; </code></p> -<p>Here, “constant” means constant at compile time, not read-only as it does in C. One interesting thing about toc is that normal functions can run at compile time, so pretty much any expression is a valid initializer for a constant, e.g. doing <code>x ::= some_function();</code> runs <code>some_function</code> at compile time, not at run time.</p> +<p>Here, "constant" means constant at compile time, not read-only as it does in C. One interesting thing about toc is that normal functions can run at compile time, so pretty much any expression is a valid initializer for a constant, e.g. doing <code>x ::= some_function();</code> runs <code>some_function</code> at compile time, not at run time.</p> diff --git a/docs/01.html b/docs/01.html index 6dce358..633295b 100644 --- a/docs/01.html +++ b/docs/01.html @@ -7,7 +7,7 @@ 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>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> @@ -15,4 +15,4 @@ main ::= fn() { 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> +<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> |