diff options
author | Jed Barber <jjbarber@y7mail.com> | 2014-11-20 22:11:03 +1100 |
---|---|---|
committer | Jed Barber <jjbarber@y7mail.com> | 2014-11-20 22:11:03 +1100 |
commit | 0c49b3f13dc00eb5811002f230e1a6e4cc52d705 (patch) | |
tree | 442992bea3c31abaae0eaa976a3307c5bcc0927e /src/Grasp/IP.hs | |
parent | 54ba705026976ae291ec8259abd83033ca01e4c6 (diff) |
Factored out graph node/edge and instruction pointer types
Diffstat (limited to 'src/Grasp/IP.hs')
-rw-r--r-- | src/Grasp/IP.hs | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/src/Grasp/IP.hs b/src/Grasp/IP.hs new file mode 100644 index 0000000..7b70e21 --- /dev/null +++ b/src/Grasp/IP.hs @@ -0,0 +1,36 @@ +module Grasp.IP ( + IP, + + singleton, + peek, + push, + pop, + isEmpty + ) where + + + +import Grasp.Node( GNode ) +import qualified Grasp.Node as GN + + + +type IP = [GNode] + + + +singleton :: GNode -> IP +singleton = (:[]) + +peek :: IP -> GNode +peek = head + +push :: GNode -> IP -> IP +push = (:) + +pop :: IP -> IP +pop = tail + +isEmpty :: IP -> Bool +isEmpty = (==[]) + |