diff options
| author | Zuhaitz Méndez Fernández de Aránguiz <zuhaitz@debian> | 2026-01-12 12:35:57 +0000 |
|---|---|---|
| committer | Zuhaitz Méndez Fernández de Aránguiz <zuhaitz@debian> | 2026-01-12 12:36:16 +0000 |
| commit | 9a54f2f52fdaf9364b0f757f5cdcbf09de230919 (patch) | |
| tree | 3fbbe8bb9216c6b63d56b9b15f972b1671bb57aa /examples | |
| parent | 96faad9e45f799fe5a595ce28cb0718fdb9ad6ca (diff) | |
Improved comptime feature, and added example.
Diffstat (limited to 'examples')
| -rw-r--r-- | examples/comptime_fib.zc | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/examples/comptime_fib.zc b/examples/comptime_fib.zc new file mode 100644 index 0000000..1ad2898 --- /dev/null +++ b/examples/comptime_fib.zc @@ -0,0 +1,25 @@ + +fn main() { + comptime { + var N = 20; + var fib: long[20]; + fib[0] = (long)0; + fib[1] = (long)1; + for var i=2; i<N; i+=1 { + fib[i] = fib[i-1] + fib[i-2]; + } + + printf("// Generated Fibonacci Sequence\n"); + printf("var fibs: int[%d] = [", N); + for var i=0; i<N; i+=1 { + printf("%ld", fib[i]); + if (i < N-1) printf(", "); + } + printf("];\n"); + } + + print "Compile-time generated Fibonacci sequence:\n"; + for i in 0..20 { + print f"fib[{i}] = {fibs[i]}\n"; + } +} |
