diff options
-rw-r--r-- | ABC/Assembler.dcl | 8 | ||||
-rw-r--r-- | ABC/Code/RTS.icl | 2 | ||||
-rw-r--r-- | ABC/Def.icl | 1 | ||||
-rw-r--r-- | ABC/Driver.dcl | 7 | ||||
-rw-r--r-- | ABC/Machine.dcl | 26 | ||||
-rw-r--r-- | ABC/Machine/AStack.dcl (renamed from ABC/AStack.dcl) | 4 | ||||
-rw-r--r-- | ABC/Machine/AStack.icl (renamed from ABC/AStack.icl) | 4 | ||||
-rw-r--r-- | ABC/Machine/BStack.dcl (renamed from ABC/BStack.dcl) | 4 | ||||
-rw-r--r-- | ABC/Machine/BStack.icl (renamed from ABC/BStack.icl) | 4 | ||||
-rw-r--r-- | ABC/Machine/CStack.dcl (renamed from ABC/CStack.dcl) | 4 | ||||
-rw-r--r-- | ABC/Machine/CStack.icl (renamed from ABC/CStack.icl) | 4 | ||||
-rw-r--r-- | ABC/Machine/Def.dcl (renamed from ABC/Def.dcl) | 14 | ||||
-rw-r--r-- | ABC/Machine/Def.icl | 1 | ||||
-rw-r--r-- | ABC/Machine/Driver.dcl | 7 | ||||
-rw-r--r-- | ABC/Machine/Driver.icl (renamed from ABC/Driver.icl) | 2 | ||||
-rw-r--r-- | ABC/Machine/GraphStore.dcl (renamed from ABC/GraphStore.dcl) | 6 | ||||
-rw-r--r-- | ABC/Machine/GraphStore.icl (renamed from ABC/GraphStore.icl) | 2 | ||||
-rw-r--r-- | ABC/Machine/IO.dcl (renamed from ABC/IO.dcl) | 8 | ||||
-rw-r--r-- | ABC/Machine/IO.icl (renamed from ABC/IO.icl) | 2 | ||||
-rw-r--r-- | ABC/Machine/Instructions.dcl (renamed from ABC/Instructions.dcl) | 8 | ||||
-rw-r--r-- | ABC/Machine/Instructions.icl (renamed from ABC/Instructions.icl) | 2 | ||||
-rw-r--r-- | ABC/Machine/Nodes.dcl (renamed from ABC/Nodes.dcl) | 6 | ||||
-rw-r--r-- | ABC/Machine/Nodes.icl (renamed from ABC/Nodes.icl) | 2 | ||||
-rw-r--r-- | ABC/Machine/Program.dcl (renamed from ABC/Program.dcl) | 4 | ||||
-rw-r--r-- | ABC/Machine/Program.icl (renamed from ABC/Program.icl) | 2 | ||||
-rw-r--r-- | test.icl | 1 |
26 files changed, 67 insertions, 68 deletions
diff --git a/ABC/Assembler.dcl b/ABC/Assembler.dcl index f750609..6b0a585 100644 --- a/ABC/Assembler.dcl +++ b/ABC/Assembler.dcl @@ -1,9 +1,9 @@ definition module ABC.Assembler -from ABC.Def import ::Arity, ::Name, ::NrArgs, ::ArgNr, ::Instruction, ::State -from ABC.AStack import ::ASrc, ::ADst -from ABC.BStack import ::BSrc, ::BDst -from ABC.GraphStore import ::Desc +from ABC.Machine.Def import ::Arity, ::Name, ::NrArgs, ::ArgNr, ::Instruction, ::State +from ABC.Machine.AStack import ::ASrc, ::ADst +from ABC.Machine.BStack import ::BSrc, ::BDst +from ABC.Machine.GraphStore import ::Desc :: Label :== String :: RedLabel :== Label diff --git a/ABC/Code/RTS.icl b/ABC/Code/RTS.icl index 89032f3..2551c51 100644 --- a/ABC/Code/RTS.icl +++ b/ABC/Code/RTS.icl @@ -1,6 +1,6 @@ implementation module ABC.Code.RTS -import ABC.Machine +import ABC.Assembler rts :: Assembler rts diff --git a/ABC/Def.icl b/ABC/Def.icl deleted file mode 100644 index 81bfeee..0000000 --- a/ABC/Def.icl +++ /dev/null @@ -1 +0,0 @@ -implementation module ABC.Def diff --git a/ABC/Driver.dcl b/ABC/Driver.dcl deleted file mode 100644 index e5dd9f6..0000000 --- a/ABC/Driver.dcl +++ /dev/null @@ -1,7 +0,0 @@ -definition module ABC.Driver - -from ABC.Def import ::State, ::Instruction -from ABC.GraphStore import ::Desc - -boot :: ([Instruction], [Desc]) -> State -fetch_cycle :: State -> State diff --git a/ABC/Machine.dcl b/ABC/Machine.dcl index de98de2..68bf4cc 100644 --- a/ABC/Machine.dcl +++ b/ABC/Machine.dcl @@ -1,17 +1,15 @@ definition module ABC.Machine import - ABC.Def, - - ABC.AStack, - ABC.BStack, - ABC.CStack, - ABC.Nodes, - ABC.GraphStore, - ABC.Program, - ABC.IO, - - ABC.Instructions, - ABC.Driver, - - ABC.Assembler + ABC.Machine.Def, + + ABC.Machine.AStack, + ABC.Machine.BStack, + ABC.Machine.CStack, + ABC.Machine.Nodes, + ABC.Machine.GraphStore, + ABC.Machine.Program, + ABC.Machine.IO, + + ABC.Machine.Instructions, + ABC.Machine.Driver diff --git a/ABC/AStack.dcl b/ABC/Machine/AStack.dcl index 423b81c..19156c7 100644 --- a/ABC/AStack.dcl +++ b/ABC/Machine/AStack.dcl @@ -1,7 +1,7 @@ -definition module ABC.AStack +definition module ABC.Machine.AStack from StdOverloaded import class toString -from ABC.Def import ::NodeId, ::NrArgs +from ABC.Machine.Def import ::NodeId, ::NrArgs :: ASrc :== Int :: ADst :== Int diff --git a/ABC/AStack.icl b/ABC/Machine/AStack.icl index 0a91ecd..2dc46ec 100644 --- a/ABC/AStack.icl +++ b/ABC/Machine/AStack.icl @@ -1,8 +1,8 @@ -implementation module ABC.AStack +implementation module ABC.Machine.AStack import StdEnv -import ABC.Def +import ABC.Machine import ABC.Misc :: AStack :== [NodeId] diff --git a/ABC/BStack.dcl b/ABC/Machine/BStack.dcl index 95cf86e..488ed75 100644 --- a/ABC/BStack.dcl +++ b/ABC/Machine/BStack.dcl @@ -1,7 +1,7 @@ -definition module ABC.BStack +definition module ABC.Machine.BStack from StdOverloaded import class ==, class toString -from ABC.Def import ::NrArgs +from ABC.Machine.Def import ::NrArgs :: Basic = Int Int | Bool Bool diff --git a/ABC/BStack.icl b/ABC/Machine/BStack.icl index a1caafd..624692e 100644 --- a/ABC/BStack.icl +++ b/ABC/Machine/BStack.icl @@ -1,8 +1,8 @@ -implementation module ABC.BStack +implementation module ABC.Machine.BStack import StdEnv -import ABC.Def +import ABC.Machine import ABC.Misc instance == Basic diff --git a/ABC/CStack.dcl b/ABC/Machine/CStack.dcl index 31d72de..cab2466 100644 --- a/ABC/CStack.dcl +++ b/ABC/Machine/CStack.dcl @@ -1,7 +1,7 @@ -definition module ABC.CStack +definition module ABC.Machine.CStack from StdOverloaded import class toString -from ABC.Def import ::InstrId +from ABC.Machine.Def import ::InstrId :: CSrc :== Int :: CDst :== Int diff --git a/ABC/CStack.icl b/ABC/Machine/CStack.icl index 74ca885..51c1562 100644 --- a/ABC/CStack.icl +++ b/ABC/Machine/CStack.icl @@ -1,8 +1,8 @@ -implementation module ABC.CStack +implementation module ABC.Machine.CStack import StdEnv -import ABC.Def +import ABC.Machine import ABC.Misc :: CStack :== [InstrId] diff --git a/ABC/Def.dcl b/ABC/Machine/Def.dcl index db2c0c0..ba36fb6 100644 --- a/ABC/Def.dcl +++ b/ABC/Machine/Def.dcl @@ -1,11 +1,11 @@ -definition module ABC.Def +definition module ABC.Machine.Def -from ABC.AStack import ::AStack -from ABC.BStack import ::BStack -from ABC.CStack import ::CStack -from ABC.GraphStore import ::GraphStore, ::DescStore -from ABC.Program import ::ProgramStore -from ABC.IO import ::IO +from ABC.Machine.AStack import ::AStack +from ABC.Machine.BStack import ::BStack +from ABC.Machine.CStack import ::CStack +from ABC.Machine.GraphStore import ::GraphStore, ::DescStore +from ABC.Machine.Program import ::ProgramStore +from ABC.Machine.IO import ::IO :: State = { astack :: AStack , bstack :: BStack diff --git a/ABC/Machine/Def.icl b/ABC/Machine/Def.icl new file mode 100644 index 0000000..4d22f22 --- /dev/null +++ b/ABC/Machine/Def.icl @@ -0,0 +1 @@ +implementation module ABC.Machine.Def diff --git a/ABC/Machine/Driver.dcl b/ABC/Machine/Driver.dcl new file mode 100644 index 0000000..5beebe5 --- /dev/null +++ b/ABC/Machine/Driver.dcl @@ -0,0 +1,7 @@ +definition module ABC.Machine.Driver + +from ABC.Machine.Def import ::State, ::Instruction +from ABC.Machine.GraphStore import ::Desc + +boot :: ([Instruction], [Desc]) -> State +fetch_cycle :: State -> State diff --git a/ABC/Driver.icl b/ABC/Machine/Driver.icl index 633d248..29b42ca 100644 --- a/ABC/Driver.icl +++ b/ABC/Machine/Driver.icl @@ -1,4 +1,4 @@ -implementation module ABC.Driver +implementation module ABC.Machine.Driver import StdEnv diff --git a/ABC/GraphStore.dcl b/ABC/Machine/GraphStore.dcl index 108a77e..da96156 100644 --- a/ABC/GraphStore.dcl +++ b/ABC/Machine/GraphStore.dcl @@ -1,8 +1,8 @@ -definition module ABC.GraphStore +definition module ABC.Machine.GraphStore from StdOverloaded import class toString -from ABC.Def import ::Arity, ::InstrId, ::Name, ::APEntry, ::DescId, ::NodeId -from ABC.Nodes import ::Node +from ABC.Machine.Def import ::Arity, ::InstrId, ::Name, ::APEntry, ::DescId, ::NodeId +from ABC.Machine.Nodes import ::Node :: Desc = Desc APEntry Arity Name diff --git a/ABC/GraphStore.icl b/ABC/Machine/GraphStore.icl index fd41517..b7aa32e 100644 --- a/ABC/GraphStore.icl +++ b/ABC/Machine/GraphStore.icl @@ -1,4 +1,4 @@ -implementation module ABC.GraphStore +implementation module ABC.Machine.GraphStore import StdEnv diff --git a/ABC/IO.dcl b/ABC/Machine/IO.dcl index 501d8cc..a9b1c5b 100644 --- a/ABC/IO.dcl +++ b/ABC/Machine/IO.dcl @@ -1,10 +1,10 @@ -definition module ABC.IO +definition module ABC.Machine.IO from StdOverloaded import class toString -from ABC.Nodes import ::Node -from ABC.GraphStore import ::Desc -from ABC.Def import ::State +from ABC.Machine.Nodes import ::Node +from ABC.Machine.GraphStore import ::Desc +from ABC.Machine.Def import ::State :: IO (:== [Char]) diff --git a/ABC/IO.icl b/ABC/Machine/IO.icl index 0762ed2..aac5ba7 100644 --- a/ABC/IO.icl +++ b/ABC/Machine/IO.icl @@ -1,4 +1,4 @@ -implementation module ABC.IO +implementation module ABC.Machine.IO import StdEnv diff --git a/ABC/Instructions.dcl b/ABC/Machine/Instructions.dcl index 45bd568..6c3c8b8 100644 --- a/ABC/Instructions.dcl +++ b/ABC/Machine/Instructions.dcl @@ -1,8 +1,8 @@ -definition module ABC.Instructions +definition module ABC.Machine.Instructions -from ABC.Def import ::NrArgs, ::State, ::DescId, ::Arity, ::InstrId, ::ArgNr -from ABC.AStack import ::ASrc, ::ADst -from ABC.BStack import ::BSrc, ::BDst +from ABC.Machine.Def import ::NrArgs, ::State, ::DescId, ::Arity, ::InstrId, ::ArgNr +from ABC.Machine.AStack import ::ASrc, ::ADst +from ABC.Machine.BStack import ::BSrc, ::BDst add_args :: ASrc NrArgs ADst State -> State create :: State -> State diff --git a/ABC/Instructions.icl b/ABC/Machine/Instructions.icl index 6317972..911b999 100644 --- a/ABC/Instructions.icl +++ b/ABC/Machine/Instructions.icl @@ -1,4 +1,4 @@ -implementation module ABC.Instructions +implementation module ABC.Machine.Instructions import StdEnv diff --git a/ABC/Nodes.dcl b/ABC/Machine/Nodes.dcl index 9edd604..b9ba996 100644 --- a/ABC/Nodes.dcl +++ b/ABC/Machine/Nodes.dcl @@ -1,7 +1,7 @@ -definition module ABC.Nodes +definition module ABC.Machine.Nodes -from ABC.Def import ::ArgNr, ::Arity, ::NodeId, ::InstrId, ::Args, ::DescId, ::NrArgs -from ABC.BStack import ::Basic +from ABC.Machine.Def import ::ArgNr, ::Arity, ::NodeId, ::InstrId, ::Args, ::DescId, ::NrArgs +from ABC.Machine.BStack import ::Basic :: Node = Node DescId InstrId Args | Basic DescId InstrId Basic diff --git a/ABC/Nodes.icl b/ABC/Machine/Nodes.icl index 55be090..d224fd8 100644 --- a/ABC/Nodes.icl +++ b/ABC/Machine/Nodes.icl @@ -1,4 +1,4 @@ -implementation module ABC.Nodes +implementation module ABC.Machine.Nodes import StdEnv diff --git a/ABC/Program.dcl b/ABC/Machine/Program.dcl index ffdf948..0526e56 100644 --- a/ABC/Program.dcl +++ b/ABC/Machine/Program.dcl @@ -1,6 +1,6 @@ -definition module ABC.Program +definition module ABC.Machine.Program -from ABC.Def import ::InstrId, ::Instruction, ::State +from ABC.Machine.Def import ::InstrId, ::Instruction, ::State pc_init :: InstrId pc_next :: InstrId -> InstrId diff --git a/ABC/Program.icl b/ABC/Machine/Program.icl index 28416bb..5b4e822 100644 --- a/ABC/Program.icl +++ b/ABC/Machine/Program.icl @@ -1,4 +1,4 @@ -implementation module ABC.Program +implementation module ABC.Machine.Program import StdEnv @@ -2,6 +2,7 @@ module test import StdEnv +import ABC.Assembler import ABC.Machine import ABC.Code |