├── .gitignore ├── .hindent.yaml ├── LICENSE ├── Setup.hs ├── app └── Main.hs ├── dist-newstyle └── cache │ └── config ├── docs ├── Makefile ├── code-generator.diag.plantuml ├── docs.tex ├── elte-logo.svg ├── high-level-architecture.diag.plantuml ├── refs.bib ├── semantic-analyzer.diag.plantuml ├── syntax-checker.diag.plantuml └── testing-methodology.diag.plantuml ├── examplePrograms ├── hello.lc ├── sdc.lc ├── turing.lc └── turing_input.txt ├── fourmolu.yaml ├── lambda-compiler.cabal ├── logo.txt ├── package.yaml ├── src ├── AtomicType.hs ├── CodeGenerator.hs ├── CodeGenerator │ └── Internal.hs ├── Errors.hs ├── Interpreter.hs ├── Lexer.hs ├── Lexer │ └── Internal.hs ├── Repl.hs ├── SemanticAnalyzer.hs ├── SemanticAnalyzer │ ├── DependencyGraph.hs │ ├── DependencyGraph │ │ └── Internal.hs │ ├── DependencyList.hs │ ├── DependencyList │ │ └── Internal.hs │ ├── Expression.hs │ ├── Expression │ │ └── Internal.hs │ ├── Internal.hs │ ├── Type.hs │ └── Type │ │ └── Internal.hs ├── StandardLibrary.hs ├── SyntacticAnalyzer.hs ├── SyntacticAnalyzer │ └── Internal.hs ├── Util.hs └── Util │ └── Limited.hs ├── stack.yaml ├── stack.yaml.lock └── test ├── LambdaCompilerTests ├── CodeGenerator │ └── CodeGeneratorTests.hs ├── E2E.hs ├── SemanticAnalyzer │ ├── DependencyGraphTest.hs │ ├── DependencyListTests.hs │ └── TypeTest.hs ├── SemanticAnalyzerTests.hs └── SyntacticAnalyzerTests.hs └── Spec.hs /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/.gitignore -------------------------------------------------------------------------------- /.hindent.yaml: -------------------------------------------------------------------------------- 1 | indent-size: 2 2 | line-length: 80 3 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/LICENSE -------------------------------------------------------------------------------- /Setup.hs: -------------------------------------------------------------------------------- 1 | import Distribution.Simple 2 | main = defaultMain 3 | -------------------------------------------------------------------------------- /app/Main.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/app/Main.hs -------------------------------------------------------------------------------- /dist-newstyle/cache/config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/dist-newstyle/cache/config -------------------------------------------------------------------------------- /docs/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/docs/Makefile -------------------------------------------------------------------------------- /docs/code-generator.diag.plantuml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/docs/code-generator.diag.plantuml -------------------------------------------------------------------------------- /docs/docs.tex: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/docs/docs.tex -------------------------------------------------------------------------------- /docs/elte-logo.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/docs/elte-logo.svg -------------------------------------------------------------------------------- /docs/high-level-architecture.diag.plantuml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/docs/high-level-architecture.diag.plantuml -------------------------------------------------------------------------------- /docs/refs.bib: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/docs/refs.bib -------------------------------------------------------------------------------- /docs/semantic-analyzer.diag.plantuml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/docs/semantic-analyzer.diag.plantuml -------------------------------------------------------------------------------- /docs/syntax-checker.diag.plantuml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/docs/syntax-checker.diag.plantuml -------------------------------------------------------------------------------- /docs/testing-methodology.diag.plantuml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/docs/testing-methodology.diag.plantuml -------------------------------------------------------------------------------- /examplePrograms/hello.lc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/examplePrograms/hello.lc -------------------------------------------------------------------------------- /examplePrograms/sdc.lc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/examplePrograms/sdc.lc -------------------------------------------------------------------------------- /examplePrograms/turing.lc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/examplePrograms/turing.lc -------------------------------------------------------------------------------- /examplePrograms/turing_input.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/examplePrograms/turing_input.txt -------------------------------------------------------------------------------- /fourmolu.yaml: -------------------------------------------------------------------------------- 1 | indentation: 2 2 | column-limit: 80 3 | -------------------------------------------------------------------------------- /lambda-compiler.cabal: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/lambda-compiler.cabal -------------------------------------------------------------------------------- /logo.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/logo.txt -------------------------------------------------------------------------------- /package.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/package.yaml -------------------------------------------------------------------------------- /src/AtomicType.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/src/AtomicType.hs -------------------------------------------------------------------------------- /src/CodeGenerator.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/src/CodeGenerator.hs -------------------------------------------------------------------------------- /src/CodeGenerator/Internal.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/src/CodeGenerator/Internal.hs -------------------------------------------------------------------------------- /src/Errors.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/src/Errors.hs -------------------------------------------------------------------------------- /src/Interpreter.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/src/Interpreter.hs -------------------------------------------------------------------------------- /src/Lexer.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/src/Lexer.hs -------------------------------------------------------------------------------- /src/Lexer/Internal.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/src/Lexer/Internal.hs -------------------------------------------------------------------------------- /src/Repl.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/src/Repl.hs -------------------------------------------------------------------------------- /src/SemanticAnalyzer.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/src/SemanticAnalyzer.hs -------------------------------------------------------------------------------- /src/SemanticAnalyzer/DependencyGraph.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/src/SemanticAnalyzer/DependencyGraph.hs -------------------------------------------------------------------------------- /src/SemanticAnalyzer/DependencyGraph/Internal.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/src/SemanticAnalyzer/DependencyGraph/Internal.hs -------------------------------------------------------------------------------- /src/SemanticAnalyzer/DependencyList.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/src/SemanticAnalyzer/DependencyList.hs -------------------------------------------------------------------------------- /src/SemanticAnalyzer/DependencyList/Internal.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/src/SemanticAnalyzer/DependencyList/Internal.hs -------------------------------------------------------------------------------- /src/SemanticAnalyzer/Expression.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/src/SemanticAnalyzer/Expression.hs -------------------------------------------------------------------------------- /src/SemanticAnalyzer/Expression/Internal.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/src/SemanticAnalyzer/Expression/Internal.hs -------------------------------------------------------------------------------- /src/SemanticAnalyzer/Internal.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/src/SemanticAnalyzer/Internal.hs -------------------------------------------------------------------------------- /src/SemanticAnalyzer/Type.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/src/SemanticAnalyzer/Type.hs -------------------------------------------------------------------------------- /src/SemanticAnalyzer/Type/Internal.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/src/SemanticAnalyzer/Type/Internal.hs -------------------------------------------------------------------------------- /src/StandardLibrary.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/src/StandardLibrary.hs -------------------------------------------------------------------------------- /src/SyntacticAnalyzer.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/src/SyntacticAnalyzer.hs -------------------------------------------------------------------------------- /src/SyntacticAnalyzer/Internal.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/src/SyntacticAnalyzer/Internal.hs -------------------------------------------------------------------------------- /src/Util.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/src/Util.hs -------------------------------------------------------------------------------- /src/Util/Limited.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/src/Util/Limited.hs -------------------------------------------------------------------------------- /stack.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/stack.yaml -------------------------------------------------------------------------------- /stack.yaml.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/stack.yaml.lock -------------------------------------------------------------------------------- /test/LambdaCompilerTests/CodeGenerator/CodeGeneratorTests.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/test/LambdaCompilerTests/CodeGenerator/CodeGeneratorTests.hs -------------------------------------------------------------------------------- /test/LambdaCompilerTests/E2E.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/test/LambdaCompilerTests/E2E.hs -------------------------------------------------------------------------------- /test/LambdaCompilerTests/SemanticAnalyzer/DependencyGraphTest.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/test/LambdaCompilerTests/SemanticAnalyzer/DependencyGraphTest.hs -------------------------------------------------------------------------------- /test/LambdaCompilerTests/SemanticAnalyzer/DependencyListTests.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/test/LambdaCompilerTests/SemanticAnalyzer/DependencyListTests.hs -------------------------------------------------------------------------------- /test/LambdaCompilerTests/SemanticAnalyzer/TypeTest.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/test/LambdaCompilerTests/SemanticAnalyzer/TypeTest.hs -------------------------------------------------------------------------------- /test/LambdaCompilerTests/SemanticAnalyzerTests.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/test/LambdaCompilerTests/SemanticAnalyzerTests.hs -------------------------------------------------------------------------------- /test/LambdaCompilerTests/SyntacticAnalyzerTests.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/test/LambdaCompilerTests/SyntacticAnalyzerTests.hs -------------------------------------------------------------------------------- /test/Spec.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ConcreteCactus/lcc/HEAD/test/Spec.hs --------------------------------------------------------------------------------