├── .github └── workflows │ └── ci.yml ├── .gitignore ├── Makefile ├── README.md ├── Setup.hs ├── cabal.project ├── examples ├── HelloWorld.hs ├── expr.morte └── expr.svg ├── flake.lock ├── flake.nix └── src ├── bin ├── Foundry.hs ├── Hask.hs ├── HaskellToSdam.hs ├── MorteToSdam.hs └── SdamToSvg.hs ├── driver ├── Source.hs └── Source │ ├── Input.hs │ ├── Input │ └── KeyCode.hs │ ├── NewGen.hs │ └── Phaser.hs ├── foundry.cabal ├── lang ├── haskell │ └── Source │ │ └── Language │ │ └── Haskell.hs └── morte │ └── Source │ └── Language │ └── Morte.hs ├── layout └── Source │ └── Layout │ ├── Cairo.hs │ ├── Cairo │ ├── Element.hs │ ├── Prim.hs │ └── Prim │ │ ├── Circle.hs │ │ ├── Color.hs │ │ ├── Curve.hs │ │ ├── Rect.hs │ │ └── Text.hs │ ├── Combinators.hs │ ├── Core.hs │ ├── Inj.hs │ └── NonNegative.hs ├── plugin └── Source │ ├── Plugin.hs │ └── Plugin │ └── Precedence.hs └── sdam └── Sdam ├── Core.hs ├── Parser.hs ├── Printer.hs ├── Syn.hs └── Validator.hs /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/.gitignore -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/README.md -------------------------------------------------------------------------------- /Setup.hs: -------------------------------------------------------------------------------- 1 | import Distribution.Simple 2 | main = defaultMain 3 | -------------------------------------------------------------------------------- /cabal.project: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/cabal.project -------------------------------------------------------------------------------- /examples/HelloWorld.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/examples/HelloWorld.hs -------------------------------------------------------------------------------- /examples/expr.morte: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/examples/expr.morte -------------------------------------------------------------------------------- /examples/expr.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/examples/expr.svg -------------------------------------------------------------------------------- /flake.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/flake.lock -------------------------------------------------------------------------------- /flake.nix: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/flake.nix -------------------------------------------------------------------------------- /src/bin/Foundry.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/bin/Foundry.hs -------------------------------------------------------------------------------- /src/bin/Hask.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/bin/Hask.hs -------------------------------------------------------------------------------- /src/bin/HaskellToSdam.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/bin/HaskellToSdam.hs -------------------------------------------------------------------------------- /src/bin/MorteToSdam.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/bin/MorteToSdam.hs -------------------------------------------------------------------------------- /src/bin/SdamToSvg.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/bin/SdamToSvg.hs -------------------------------------------------------------------------------- /src/driver/Source.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/driver/Source.hs -------------------------------------------------------------------------------- /src/driver/Source/Input.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/driver/Source/Input.hs -------------------------------------------------------------------------------- /src/driver/Source/Input/KeyCode.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/driver/Source/Input/KeyCode.hs -------------------------------------------------------------------------------- /src/driver/Source/NewGen.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/driver/Source/NewGen.hs -------------------------------------------------------------------------------- /src/driver/Source/Phaser.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/driver/Source/Phaser.hs -------------------------------------------------------------------------------- /src/foundry.cabal: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/foundry.cabal -------------------------------------------------------------------------------- /src/lang/haskell/Source/Language/Haskell.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/lang/haskell/Source/Language/Haskell.hs -------------------------------------------------------------------------------- /src/lang/morte/Source/Language/Morte.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/lang/morte/Source/Language/Morte.hs -------------------------------------------------------------------------------- /src/layout/Source/Layout/Cairo.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/layout/Source/Layout/Cairo.hs -------------------------------------------------------------------------------- /src/layout/Source/Layout/Cairo/Element.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/layout/Source/Layout/Cairo/Element.hs -------------------------------------------------------------------------------- /src/layout/Source/Layout/Cairo/Prim.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/layout/Source/Layout/Cairo/Prim.hs -------------------------------------------------------------------------------- /src/layout/Source/Layout/Cairo/Prim/Circle.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/layout/Source/Layout/Cairo/Prim/Circle.hs -------------------------------------------------------------------------------- /src/layout/Source/Layout/Cairo/Prim/Color.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/layout/Source/Layout/Cairo/Prim/Color.hs -------------------------------------------------------------------------------- /src/layout/Source/Layout/Cairo/Prim/Curve.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/layout/Source/Layout/Cairo/Prim/Curve.hs -------------------------------------------------------------------------------- /src/layout/Source/Layout/Cairo/Prim/Rect.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/layout/Source/Layout/Cairo/Prim/Rect.hs -------------------------------------------------------------------------------- /src/layout/Source/Layout/Cairo/Prim/Text.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/layout/Source/Layout/Cairo/Prim/Text.hs -------------------------------------------------------------------------------- /src/layout/Source/Layout/Combinators.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/layout/Source/Layout/Combinators.hs -------------------------------------------------------------------------------- /src/layout/Source/Layout/Core.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/layout/Source/Layout/Core.hs -------------------------------------------------------------------------------- /src/layout/Source/Layout/Inj.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/layout/Source/Layout/Inj.hs -------------------------------------------------------------------------------- /src/layout/Source/Layout/NonNegative.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/layout/Source/Layout/NonNegative.hs -------------------------------------------------------------------------------- /src/plugin/Source/Plugin.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/plugin/Source/Plugin.hs -------------------------------------------------------------------------------- /src/plugin/Source/Plugin/Precedence.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/plugin/Source/Plugin/Precedence.hs -------------------------------------------------------------------------------- /src/sdam/Sdam/Core.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/sdam/Sdam/Core.hs -------------------------------------------------------------------------------- /src/sdam/Sdam/Parser.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/sdam/Sdam/Parser.hs -------------------------------------------------------------------------------- /src/sdam/Sdam/Printer.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/sdam/Sdam/Printer.hs -------------------------------------------------------------------------------- /src/sdam/Sdam/Syn.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/sdam/Sdam/Syn.hs -------------------------------------------------------------------------------- /src/sdam/Sdam/Validator.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/serokell/foundry/HEAD/src/sdam/Sdam/Validator.hs --------------------------------------------------------------------------------