2014-07-08から1日間の記事一覧

スタックマシン

OCamlではリストでスタックを表しパターンマッチで奇麗にスタックマシンを書く事が出来ます。 let rec eval (s,c) = match (s,c) with | `I a::`I b::s,`O "+"::c -> eval (`I(a+b)::s, c) | `I a::`I b::s,`O "-"::c -> eval (`I(a-b)::s, c) | `I a::`I b:…