diff options
| author | nodist <kevin.comas.git@gmail.com> | 2026-07-11 21:36:30 -0400 |
|---|---|---|
| committer | nodist <kevin.comas.git@gmail.com> | 2026-07-11 21:36:30 -0400 |
| commit | 997399661be0350e12d1b8eb4cad90ce56ed68f2 (patch) | |
| tree | 05be31959272d2b4ebf9eab6961a2ff523fd843a /ack.kpl | |
| parent | 78a31d8c270d13dfade672a3687f3c95d8bd19ae (diff) | |
remove non typed args
Diffstat (limited to 'ack.kpl')
| -rw-r--r-- | ack.kpl | 16 |
1 files changed, 5 insertions, 11 deletions
@@ -1,26 +1,20 @@ // Ackermann function -`export ack : ([m; n] - t : `type m; - ? t != `type n { - `panic "m and n must be the same type" - } - ? |(t = Int_signed; t = Float) { - ? |(m < 0; n < 0) { `return 0 } - } +`export ack : ([I64; I64.m; I64.n] ? { + |(m < 0; n < 0) { 0 } m = 0 { n + 1 } &(m > 0; n = 0) { ack `sync (m - 1; 1) } { ack `sync (m - 1; ack `sync (m; n - 1)) } } ) -`export ack_string : ([m; n] +`export ack_string : ([String; I64.m; I64.n] "#MAGENTA#ack#(#CYAN#%#, #CYAN#%#) #WHITE#=# #GREEN#%#\n" `format (m; n; ack `sync (m; n)) ) -`is_main ([] +`is_main ([Void] `use "sys" [args] ? 4 != `length args { `return `error String $ ( @@ -28,5 +22,5 @@ "#BOLD#WHITE#Usage: % % <m> <n>#\n" `format (args `get 0; args `get 1) ) } - `value ack_string `sync (U64 $ args `get -2; U64 $ args `get -1) + `value ack_string `sync (I64 $ args `get -2; I64 $ args `get -1) ) |
