diff --git a/src/Juvix/Asm/Data/InfoTable.hs b/src/Juvix/Compiler/Asm/Data/InfoTable.hs similarity index 89% rename from src/Juvix/Asm/Data/InfoTable.hs rename to src/Juvix/Compiler/Asm/Data/InfoTable.hs index e44d4dd6ba..f0f8f09e24 100644 --- a/src/Juvix/Asm/Data/InfoTable.hs +++ b/src/Juvix/Compiler/Asm/Data/InfoTable.hs @@ -1,6 +1,6 @@ -module Juvix.Asm.Data.InfoTable where +module Juvix.Compiler.Asm.Data.InfoTable where -import Juvix.Asm.Language +import Juvix.Compiler.Asm.Language data InfoTable = InfoTable { _infoFunctions :: HashMap Symbol FunctionInfo, diff --git a/src/Juvix/Asm/Translation/Extra/InfoTableBuilder.hs b/src/Juvix/Compiler/Asm/Data/InfoTableBuilder.hs similarity index 84% rename from src/Juvix/Asm/Translation/Extra/InfoTableBuilder.hs rename to src/Juvix/Compiler/Asm/Data/InfoTableBuilder.hs index 9e3e9ce04c..5b4a24cabf 100644 --- a/src/Juvix/Asm/Translation/Extra/InfoTableBuilder.hs +++ b/src/Juvix/Compiler/Asm/Data/InfoTableBuilder.hs @@ -1,8 +1,8 @@ -module Juvix.Asm.Translation.Extra.InfoTableBuilder where +module Juvix.Compiler.Asm.Data.InfoTableBuilder where import Data.HashMap.Strict qualified as HashMap -import Juvix.Asm.Data.InfoTable -import Juvix.Asm.Language +import Juvix.Compiler.Asm.Data.InfoTable +import Juvix.Compiler.Asm.Language data InfoTableBuilder m a where RegisterFunction :: FunctionInfo -> InfoTableBuilder m () diff --git a/src/Juvix/Asm/Interpreter.hs b/src/Juvix/Compiler/Asm/Interpreter.hs similarity index 97% rename from src/Juvix/Asm/Interpreter.hs rename to src/Juvix/Compiler/Asm/Interpreter.hs index b0591354d1..19b81d6807 100644 --- a/src/Juvix/Asm/Interpreter.hs +++ b/src/Juvix/Compiler/Asm/Interpreter.hs @@ -1,11 +1,11 @@ -module Juvix.Asm.Interpreter where +module Juvix.Compiler.Asm.Interpreter where import Control.Monad import Data.HashMap.Strict qualified as HashMap -import Juvix.Asm.Data.InfoTable -import Juvix.Asm.Interpreter.Extra -import Juvix.Asm.Interpreter.Runtime -import Juvix.Asm.Language +import Juvix.Compiler.Asm.Data.InfoTable +import Juvix.Compiler.Asm.Interpreter.Extra +import Juvix.Compiler.Asm.Interpreter.Runtime +import Juvix.Compiler.Asm.Language -- The returned Val is the value on top of the value stack at exit, i.e., when -- executing a toplevel Return. Throws a runtime error if at exit the value diff --git a/src/Juvix/Asm/Interpreter/Extra.hs b/src/Juvix/Compiler/Asm/Interpreter/Extra.hs similarity index 79% rename from src/Juvix/Asm/Interpreter/Extra.hs rename to src/Juvix/Compiler/Asm/Interpreter/Extra.hs index a2b0e07855..1dbb3a0d5d 100644 --- a/src/Juvix/Asm/Interpreter/Extra.hs +++ b/src/Juvix/Compiler/Asm/Interpreter/Extra.hs @@ -1,8 +1,8 @@ -module Juvix.Asm.Interpreter.Extra where +module Juvix.Compiler.Asm.Interpreter.Extra where import Data.HashMap.Strict qualified as HashMap -import Juvix.Asm.Data.InfoTable -import Juvix.Asm.Interpreter.Runtime +import Juvix.Compiler.Asm.Data.InfoTable +import Juvix.Compiler.Asm.Interpreter.Runtime import Juvix.Prelude frameFromFunctionInfo :: FunctionInfo -> [Val] -> Frame diff --git a/src/Juvix/Asm/Interpreter/Runtime.hs b/src/Juvix/Compiler/Asm/Interpreter/Runtime.hs similarity index 98% rename from src/Juvix/Asm/Interpreter/Runtime.hs rename to src/Juvix/Compiler/Asm/Interpreter/Runtime.hs index 014cf3ddb6..5e15cd7328 100644 --- a/src/Juvix/Asm/Interpreter/Runtime.hs +++ b/src/Juvix/Compiler/Asm/Interpreter/Runtime.hs @@ -1,7 +1,7 @@ -module Juvix.Asm.Interpreter.Runtime where +module Juvix.Compiler.Asm.Interpreter.Runtime where import Data.HashMap.Strict qualified as HashMap -import Juvix.Asm.Language +import Juvix.Compiler.Asm.Language {- Memory consists of: diff --git a/src/Juvix/Asm/Language.hs b/src/Juvix/Compiler/Asm/Language.hs similarity index 97% rename from src/Juvix/Asm/Language.hs rename to src/Juvix/Compiler/Asm/Language.hs index d526987dd2..87a490cbb7 100644 --- a/src/Juvix/Asm/Language.hs +++ b/src/Juvix/Compiler/Asm/Language.hs @@ -2,13 +2,13 @@ {-# OPTIONS_GHC -Wno-unrecognised-pragmas #-} {-# HLINT ignore "Avoid restricted flags" #-} -module Juvix.Asm.Language - ( module Juvix.Asm.Language, - module Juvix.Core.Language.Base, +module Juvix.Compiler.Asm.Language + ( module Juvix.Compiler.Asm.Language, + module Juvix.Compiler.Core.Language.Base, ) where -import Juvix.Core.Language.Base +import Juvix.Compiler.Core.Language.Base {- A JuvixAsm program is a set of JuvixAsm functions. Every function has an diff --git a/src/Juvix/Asm/Translation/FromCore.hs b/src/Juvix/Compiler/Asm/Translation/FromCore.hs similarity index 93% rename from src/Juvix/Asm/Translation/FromCore.hs rename to src/Juvix/Compiler/Asm/Translation/FromCore.hs index 1ddcab3e15..e355898008 100644 --- a/src/Juvix/Asm/Translation/FromCore.hs +++ b/src/Juvix/Compiler/Asm/Translation/FromCore.hs @@ -1,14 +1,14 @@ -module Juvix.Asm.Translation.FromCore where +module Juvix.Compiler.Asm.Translation.FromCore where import Data.DList qualified as DL import Data.HashMap.Strict qualified as HashMap -import Juvix.Asm.Language -import Juvix.Core.Data.BinderList qualified as BL -import Juvix.Core.Data.InfoTable qualified as Core -import Juvix.Core.Extra qualified as Core -import Juvix.Core.Language qualified as Core -import Juvix.Core.Language.Info qualified as Info -import Juvix.Core.Language.Info.ArgsNumInfo +import Juvix.Compiler.Asm.Language +import Juvix.Compiler.Core.Data.BinderList qualified as BL +import Juvix.Compiler.Core.Data.InfoTable qualified as Core +import Juvix.Compiler.Core.Extra qualified as Core +import Juvix.Compiler.Core.Language qualified as Core +import Juvix.Compiler.Core.Language.Info qualified as Info +import Juvix.Compiler.Core.Language.Info.ArgsNumInfo type BinderList = BL.BinderList