namespace; include rt; let table[10]; let greeting = "hey"; const N = 10, BIG = 0x100 * 2; fn fib(n) { if (n < 2) return n; return fib(n - 1) + fib(n - 2); } fn twice(f, x) { return f(f(x)); } fn inc(x) { return x + 1; } fn main() { let i, s = 0, a[5]; for (i = 0; i < N; i++) table[i] = i * i; for (let j = 0; j < N; j++) s += table[j]; rt.put_n(s); rt.put_c(' '); rt.put_n(fib(15)); rt.put_c(' '); rt.put_n(twice(inc, 40)); rt.put_c(' '); rt.put_n(BIG); rt.put_c(10); rt.put_s(greeting); rt.put_c(' '); rt.put_n('A'); rt.put_c(' '); rt.put_n(-17 / 5); rt.put_c(' '); rt.put_n(-17 % 5); rt.put_c(' '); rt.put_n(1 << 10); rt.put_c(' '); rt.put_n(-64 >> 3); rt.put_c(10); i = 0; while (1) { i++; if (i == 3) continue; if (i > 6) break; rt.put_n(i); } rt.put_c(10); a[0] = 5; a[1] = a[0]++; a[2] = ++a[0]; rt.put_n(a[0]); rt.put_n(a[1]); rt.put_n(a[2]); rt.put_c(10); let b = { let t = 3; t * t }; rt.put_n(b); rt.put_c(' '); rt.put_n(3 > 2 && 2 > 1); rt.put_n(0 || 0); rt.put_n(!5); rt.put_n(~0); rt.put_n(5 != 5); rt.put_n(4 >= 4); rt.put_c(10); let x = asm { 2 3 + }; rt.put_n(x); rt.put_c(10); asm { 'o' . 'k' . 10 . } return 0; }