Model virtual machine ADT
This commit is contained in:
20
app/VirtualMachine.hs
Normal file
20
app/VirtualMachine.hs
Normal file
@@ -0,0 +1,20 @@
|
||||
module VirtualMachine (
|
||||
VM(..),
|
||||
empty
|
||||
)
|
||||
where
|
||||
|
||||
import qualified Data.Sequence as S
|
||||
|
||||
data VM = VM { pc :: Int
|
||||
, fp :: Int
|
||||
, stack :: S.Seq Int
|
||||
, halt :: Bool
|
||||
} deriving (Show, Eq)
|
||||
|
||||
empty :: VM
|
||||
empty = VM { pc = -1
|
||||
, fp = -1
|
||||
, stack = S.empty
|
||||
, halt = False
|
||||
}
|
||||
Reference in New Issue
Block a user