新次元新発想!新しい文法を作るスレ
■ このスレッドは過去ログ倉庫に格納されています
0860デフォルトの名無しさん
NGNG書式 #n <num> [<sexpr> ...]
<num>で指定した回数だけ後続のS式を読み込み、
1つのリストとみなす。
;#nで記述したアッカーマン
#n3 define #n3 ack m n
#n4 if #n2 zero? m
#n3 + n 1
#n4 if #n2 zero? n
#n3 ack #n3 - m 1 1
#n3 ack #n3 - m 1 #n3 ack m #n3 - n 1
;↓と等価
(define (ack m n)
(if (zero? m) (+ n 1)
(if (zero? n) (ack (- m 1) 1)
(ack (- m 1) (ack m (- n 1))))))
#n3 ack 3 8
=>2045
見ての通り、括弧が全く無い。
そのかわり、アンカーを頭に書く必要がある。
・・・どうかなあ?
■ このスレッドは過去ログ倉庫に格納されています