` Calculate N factorial unlimited precision ` ! factorial (N) : [line carry n i] = { line = 1; `result (base 1000, big-endian)` n = 1; (n <= N) ?? { `( multiply line by n base 1000 )` carry = 0; i = #line; i-- ?? { v = n * line[i] + carry; line[i] = v %% 1000; carry = v % 1000; }; carry ? (line [<-] carry) :; `( insert carry, if needed )` n ++; }; `(n <= N)` ` Output result (line) ` <: ('\n', N, "! = \n"); i = 0; i < #line ?? { v = line[i ++]; <: ((v < 10 ? '00' : v < 100 ? '0' : ''), v, ' '); }; <: '\n\n'; }; ` -- factorial ` factorial (100);