diff --git a/README.md b/README.md index 91f8e57..d767745 100644 --- a/README.md +++ b/README.md @@ -3,3 +3,17 @@ TTK-91 is a assembly-like language made for a Computer organization course in Helsinki University. The course used this language to teach how programming languages work, how code is compiled into machine language from a basic assembly-like language. This language is now retiring and as a tribute, I thought I would write a proper CLI compiler for the language in Haskell. + + +## Todo +* Implement + * registers + * memory + * LOAD, STORE + * arithmetic operations + * comparison + * jumps + * Stack + operators + * System calls + * instruction translation to binary and hex + * compiler configuration (stdin etc.) diff --git a/CHANGELOG.md b/haskell/CHANGELOG.md similarity index 100% rename from CHANGELOG.md rename to haskell/CHANGELOG.md diff --git a/LICENSE b/haskell/LICENSE similarity index 100% rename from LICENSE rename to haskell/LICENSE diff --git a/Setup.hs b/haskell/Setup.hs similarity index 100% rename from Setup.hs rename to haskell/Setup.hs diff --git a/app/Main.hs b/haskell/app/Main.hs similarity index 100% rename from app/Main.hs rename to haskell/app/Main.hs diff --git a/docs/tkk91.md b/haskell/docs/tkk91.md similarity index 100% rename from docs/tkk91.md rename to haskell/docs/tkk91.md diff --git a/package.yaml b/haskell/package.yaml similarity index 100% rename from package.yaml rename to haskell/package.yaml diff --git a/src/Lib.hs b/haskell/src/Lib.hs similarity index 100% rename from src/Lib.hs rename to haskell/src/Lib.hs diff --git a/haskell/src/Register.hs b/haskell/src/Register.hs new file mode 100644 index 0000000..be21d7e --- /dev/null +++ b/haskell/src/Register.hs @@ -0,0 +1,3 @@ +module Register + where + diff --git a/stack.yaml b/haskell/stack.yaml similarity index 100% rename from stack.yaml rename to haskell/stack.yaml diff --git a/haskell/stack.yaml.lock b/haskell/stack.yaml.lock new file mode 100644 index 0000000..67a9381 --- /dev/null +++ b/haskell/stack.yaml.lock @@ -0,0 +1,13 @@ +# This file was autogenerated by Stack. +# You should not edit this file by hand. +# For more information, please see the documentation at: +# https://docs.haskellstack.org/en/stable/lock_files + +packages: [] +snapshots: +- completed: + sha256: 7b975b104cb3dbf0c297dfd01f936a4d2ee523241dd0b1ae960522b833fe3027 + size: 714096 + url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/22/7.yaml + original: + url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/22/7.yaml diff --git a/test/Spec.hs b/haskell/test/Spec.hs similarity index 100% rename from test/Spec.hs rename to haskell/test/Spec.hs diff --git a/ttk91-compiler.cabal b/haskell/ttk91-compiler.cabal similarity index 100% rename from ttk91-compiler.cabal rename to haskell/ttk91-compiler.cabal