lambda_mountain 1.12.9

Lambda Mountain
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

import STDLIB/default-instruction-set.lm;
import STDLIB/default-primitives.lm;
import STDLIB/default-rules.lm;

fib := λ(: x U8)(: y U8). (: (
   x
) U8);

main := (
   (let cs 0_u8)
   (set cs (fib( 103_u8 106_u8 )))
   (mov( 1_u64 RAX )) # write
   (mov( 1_u64 RDI )) # stdout
   (mov( (& cs) RSI )) # data
   (mov( 1_u64 RDX )) # length
   (syscall())
);