Skip to content
xhlkogitsune edited this page Jun 17, 2011 · 12 revisions

とりあえず日本文。

  • I x: "return x" 恒等写像 (λx.x)
  • zero: "return 0" 0
  • succ n: "m <- n + 1; return m" 整数nを受け取り、n<65535の場合はn+1を、65535の場合は65535を返す。nが整数でなければerror。
  • dbl n: "m <- n * 2; return m" 整数nを受け取り、n<32768の場合はn*2を、それ以外の整数の場合は65535を返す。nが整数でなければerror。
  • get i: "y <- f[i]; return y" i番目のslotのvalueを返す(aliveの場合)。iがvalid slot numberではない場合、またはslotがdeadの場合error。
  • put x y: "return y" 引数を捨てて恒等写像を返す。
  • S f g x: "h <- f x; y <- g x; z <- h y; return z" Sコンビネータ。λf.λg.λx.fx(gx)。error条件は後で書くけどたぶん自明。
  • K x y: "return x" Kコンビネータ。

Clone this wiki locally