2008-09-14から1日間の記事一覧

phorth---(その1.4)オペレータ定義の仕様変更2

Evaluator さらに,スタックも type Stack = [Stackable] から type Stack = [Stackable] data Stackable = Pushed Literal | Opname Word | Code AST deriving Show と変更します.つまり「新しいオペレータの名前」と「コードのブロック」もスタックに積め…

phorth---(その1.3)オペレータ定義の仕様変更1

Parserの改造 新しいオペレータを定義する際に /a { 1 2 } def という構文を使って,これをパースして [NewWord "a" [Push 1 ,Push 2]] というASTを構築しました.これを評価すると Interp {stack = [], dict = fromList [("a",[Push 1,Push 2])]} という状…