├── .gitignore ├── .gitmodules ├── .travis.yml ├── LICENSE ├── Makefile ├── README.md ├── Setup.hs ├── app ├── Compile.hs ├── Env.hs ├── Main.hs ├── Options.hs ├── Repl.hs ├── Runners.hs └── TypedValue.hs ├── docs ├── .gitignore ├── Makefile ├── _extra │ ├── .nojekyll │ └── CNAME ├── _static │ ├── favicon.png │ ├── logo-white.svg │ ├── prism-verve.js │ ├── prism.css │ ├── prism.js │ └── style.css ├── _templates │ └── layout.html ├── code.py ├── conf.py ├── future.rst ├── index.rst ├── reference │ ├── classes.rst │ ├── comments.rst │ ├── enums.rst │ ├── functions.rst │ ├── generics.rst │ ├── if.rst │ ├── imports.rst │ ├── interfaces.rst │ ├── match.rst │ ├── operators.rst │ ├── primitives.rst │ ├── records.rst │ ├── type_aliases.rst │ └── variables.rst └── requirements.txt ├── lib └── Std.vrv ├── resources ├── grammar.ebnf ├── logo-v2.sketch └── logo.sketch ├── src ├── Absyn │ ├── Base.h │ ├── Base.hs │ ├── Loc.hs │ ├── Meta.hs │ ├── Type.hs │ ├── Typed.hs │ ├── Untyped.hs │ └── ValueOccursCheck.hs ├── Bytecode │ ├── Bytecode.hs │ ├── Compiler.hs │ ├── Encoder.hs │ └── Opcodes.hs ├── Core │ ├── Absyn.hs │ ├── Desugar.hs │ ├── Match.hs │ ├── Match.hs-boot │ └── State.hs ├── Interpreter │ ├── Builtin.hs │ ├── Env.hs │ ├── Env.hs-boot │ ├── Eval.hs │ ├── RuntimeError.hs │ └── Value.hs ├── Lib │ └── Registry.hs ├── Reassoc │ ├── Env.hs │ ├── Error.hs │ └── Reassoc.hs ├── Renamer │ ├── Env.hs │ ├── Error.hs │ └── Renamer.hs ├── Syntax │ ├── Decl.hs │ ├── Expr.hs │ ├── Import.hs │ ├── Lexer.hs │ ├── Literal.hs │ ├── Parser.hs │ ├── Pattern.hs │ ├── Shared.hs │ ├── Stmt.hs │ ├── Stmt.hs-boot │ └── Type.hs ├── Typing │ ├── Constraint.hs │ ├── Decl.hs │ ├── Env.hs │ ├── Expr.hs │ ├── Kinds.hs │ ├── Stmt.hs │ ├── Stmt.hs-boot │ ├── Substitution.hs │ ├── Subtyping.hs │ ├── TypeChecker.hs │ ├── TypeError.hs │ ├── Types.hs │ ├── Util.hs │ └── Variance.hs └── Util │ ├── Env.hs │ ├── Error.hs │ ├── PrettyPrint.hs │ └── Scope.hs ├── stack.yaml ├── tests ├── correct │ ├── Class.vrv │ ├── Enum.vrv │ ├── Fixtures │ │ ├── A.vrv │ │ └── B.vrv │ ├── Match.vrv │ ├── MathParser.vrv │ ├── TypeAlias.vrv │ ├── ad-hoc.vrv │ ├── applications.vrv │ ├── builtins.vrv │ ├── example.vrv │ ├── functions.vrv │ ├── generics.vrv │ ├── identities.vrv │ ├── if.vrv │ ├── imports.vrv │ ├── lambda.vrv │ ├── let.vrv │ ├── literals.vrv │ ├── operators.vrv │ ├── parser-edge-cases.vrv │ ├── records.vrv │ ├── scoping.vrv │ ├── strict.vrv │ ├── substitution.vrv │ ├── subtyping.vrv │ └── typing.vrv ├── incorrect │ ├── Class.vrv │ ├── ad-hoc.vrv │ ├── builtins.vrv │ ├── enum-type-as-ctor.vrv │ ├── enum.vrv │ ├── lambda.vrv │ ├── match.vrv │ ├── operators.vrv │ ├── records.vrv │ └── types.vrv ├── lit.cfg └── requirements.txt ├── verve ├── verve.cabal └── vm ├── Makefile ├── build └── verve ├── main └── src ├── Block.cpp ├── Block.h ├── Bytecode.h ├── Decoder.cpp ├── Decoder.h ├── Interpreter.cpp ├── Interpreter.h ├── Opcodes.h ├── VM.cpp ├── VM.h ├── Value.h └── main.cpp /.gitignore: -------------------------------------------------------------------------------- 1 | _build 2 | Output 3 | .stack-work 4 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/.gitmodules -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/.travis.yml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/README.md -------------------------------------------------------------------------------- /Setup.hs: -------------------------------------------------------------------------------- 1 | import Distribution.Simple 2 | main = defaultMain 3 | -------------------------------------------------------------------------------- /app/Compile.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/app/Compile.hs -------------------------------------------------------------------------------- /app/Env.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/app/Env.hs -------------------------------------------------------------------------------- /app/Main.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/app/Main.hs -------------------------------------------------------------------------------- /app/Options.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/app/Options.hs -------------------------------------------------------------------------------- /app/Repl.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/app/Repl.hs -------------------------------------------------------------------------------- /app/Runners.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/app/Runners.hs -------------------------------------------------------------------------------- /app/TypedValue.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/app/TypedValue.hs -------------------------------------------------------------------------------- /docs/.gitignore: -------------------------------------------------------------------------------- 1 | *.pyc 2 | -------------------------------------------------------------------------------- /docs/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/Makefile -------------------------------------------------------------------------------- /docs/_extra/.nojekyll: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/_extra/CNAME: -------------------------------------------------------------------------------- 1 | docs.verve-lang.org 2 | -------------------------------------------------------------------------------- /docs/_static/favicon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/_static/favicon.png -------------------------------------------------------------------------------- /docs/_static/logo-white.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/_static/logo-white.svg -------------------------------------------------------------------------------- /docs/_static/prism-verve.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/_static/prism-verve.js -------------------------------------------------------------------------------- /docs/_static/prism.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/_static/prism.css -------------------------------------------------------------------------------- /docs/_static/prism.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/_static/prism.js -------------------------------------------------------------------------------- /docs/_static/style.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/_static/style.css -------------------------------------------------------------------------------- /docs/_templates/layout.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/_templates/layout.html -------------------------------------------------------------------------------- /docs/code.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/code.py -------------------------------------------------------------------------------- /docs/conf.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/conf.py -------------------------------------------------------------------------------- /docs/future.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/future.rst -------------------------------------------------------------------------------- /docs/index.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/index.rst -------------------------------------------------------------------------------- /docs/reference/classes.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/reference/classes.rst -------------------------------------------------------------------------------- /docs/reference/comments.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/reference/comments.rst -------------------------------------------------------------------------------- /docs/reference/enums.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/reference/enums.rst -------------------------------------------------------------------------------- /docs/reference/functions.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/reference/functions.rst -------------------------------------------------------------------------------- /docs/reference/generics.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/reference/generics.rst -------------------------------------------------------------------------------- /docs/reference/if.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/reference/if.rst -------------------------------------------------------------------------------- /docs/reference/imports.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/reference/imports.rst -------------------------------------------------------------------------------- /docs/reference/interfaces.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/reference/interfaces.rst -------------------------------------------------------------------------------- /docs/reference/match.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/reference/match.rst -------------------------------------------------------------------------------- /docs/reference/operators.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/reference/operators.rst -------------------------------------------------------------------------------- /docs/reference/primitives.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/reference/primitives.rst -------------------------------------------------------------------------------- /docs/reference/records.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/reference/records.rst -------------------------------------------------------------------------------- /docs/reference/type_aliases.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/reference/type_aliases.rst -------------------------------------------------------------------------------- /docs/reference/variables.rst: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/reference/variables.rst -------------------------------------------------------------------------------- /docs/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/docs/requirements.txt -------------------------------------------------------------------------------- /lib/Std.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/lib/Std.vrv -------------------------------------------------------------------------------- /resources/grammar.ebnf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/resources/grammar.ebnf -------------------------------------------------------------------------------- /resources/logo-v2.sketch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/resources/logo-v2.sketch -------------------------------------------------------------------------------- /resources/logo.sketch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/resources/logo.sketch -------------------------------------------------------------------------------- /src/Absyn/Base.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Absyn/Base.h -------------------------------------------------------------------------------- /src/Absyn/Base.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Absyn/Base.hs -------------------------------------------------------------------------------- /src/Absyn/Loc.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Absyn/Loc.hs -------------------------------------------------------------------------------- /src/Absyn/Meta.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Absyn/Meta.hs -------------------------------------------------------------------------------- /src/Absyn/Type.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Absyn/Type.hs -------------------------------------------------------------------------------- /src/Absyn/Typed.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Absyn/Typed.hs -------------------------------------------------------------------------------- /src/Absyn/Untyped.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Absyn/Untyped.hs -------------------------------------------------------------------------------- /src/Absyn/ValueOccursCheck.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Absyn/ValueOccursCheck.hs -------------------------------------------------------------------------------- /src/Bytecode/Bytecode.hs: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/Bytecode/Compiler.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Bytecode/Compiler.hs -------------------------------------------------------------------------------- /src/Bytecode/Encoder.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Bytecode/Encoder.hs -------------------------------------------------------------------------------- /src/Bytecode/Opcodes.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Bytecode/Opcodes.hs -------------------------------------------------------------------------------- /src/Core/Absyn.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Core/Absyn.hs -------------------------------------------------------------------------------- /src/Core/Desugar.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Core/Desugar.hs -------------------------------------------------------------------------------- /src/Core/Match.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Core/Match.hs -------------------------------------------------------------------------------- /src/Core/Match.hs-boot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Core/Match.hs-boot -------------------------------------------------------------------------------- /src/Core/State.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Core/State.hs -------------------------------------------------------------------------------- /src/Interpreter/Builtin.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Interpreter/Builtin.hs -------------------------------------------------------------------------------- /src/Interpreter/Env.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Interpreter/Env.hs -------------------------------------------------------------------------------- /src/Interpreter/Env.hs-boot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Interpreter/Env.hs-boot -------------------------------------------------------------------------------- /src/Interpreter/Eval.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Interpreter/Eval.hs -------------------------------------------------------------------------------- /src/Interpreter/RuntimeError.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Interpreter/RuntimeError.hs -------------------------------------------------------------------------------- /src/Interpreter/Value.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Interpreter/Value.hs -------------------------------------------------------------------------------- /src/Lib/Registry.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Lib/Registry.hs -------------------------------------------------------------------------------- /src/Reassoc/Env.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Reassoc/Env.hs -------------------------------------------------------------------------------- /src/Reassoc/Error.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Reassoc/Error.hs -------------------------------------------------------------------------------- /src/Reassoc/Reassoc.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Reassoc/Reassoc.hs -------------------------------------------------------------------------------- /src/Renamer/Env.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Renamer/Env.hs -------------------------------------------------------------------------------- /src/Renamer/Error.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Renamer/Error.hs -------------------------------------------------------------------------------- /src/Renamer/Renamer.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Renamer/Renamer.hs -------------------------------------------------------------------------------- /src/Syntax/Decl.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Syntax/Decl.hs -------------------------------------------------------------------------------- /src/Syntax/Expr.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Syntax/Expr.hs -------------------------------------------------------------------------------- /src/Syntax/Import.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Syntax/Import.hs -------------------------------------------------------------------------------- /src/Syntax/Lexer.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Syntax/Lexer.hs -------------------------------------------------------------------------------- /src/Syntax/Literal.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Syntax/Literal.hs -------------------------------------------------------------------------------- /src/Syntax/Parser.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Syntax/Parser.hs -------------------------------------------------------------------------------- /src/Syntax/Pattern.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Syntax/Pattern.hs -------------------------------------------------------------------------------- /src/Syntax/Shared.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Syntax/Shared.hs -------------------------------------------------------------------------------- /src/Syntax/Stmt.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Syntax/Stmt.hs -------------------------------------------------------------------------------- /src/Syntax/Stmt.hs-boot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Syntax/Stmt.hs-boot -------------------------------------------------------------------------------- /src/Syntax/Type.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Syntax/Type.hs -------------------------------------------------------------------------------- /src/Typing/Constraint.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Typing/Constraint.hs -------------------------------------------------------------------------------- /src/Typing/Decl.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Typing/Decl.hs -------------------------------------------------------------------------------- /src/Typing/Env.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Typing/Env.hs -------------------------------------------------------------------------------- /src/Typing/Expr.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Typing/Expr.hs -------------------------------------------------------------------------------- /src/Typing/Kinds.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Typing/Kinds.hs -------------------------------------------------------------------------------- /src/Typing/Stmt.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Typing/Stmt.hs -------------------------------------------------------------------------------- /src/Typing/Stmt.hs-boot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Typing/Stmt.hs-boot -------------------------------------------------------------------------------- /src/Typing/Substitution.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Typing/Substitution.hs -------------------------------------------------------------------------------- /src/Typing/Subtyping.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Typing/Subtyping.hs -------------------------------------------------------------------------------- /src/Typing/TypeChecker.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Typing/TypeChecker.hs -------------------------------------------------------------------------------- /src/Typing/TypeError.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Typing/TypeError.hs -------------------------------------------------------------------------------- /src/Typing/Types.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Typing/Types.hs -------------------------------------------------------------------------------- /src/Typing/Util.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Typing/Util.hs -------------------------------------------------------------------------------- /src/Typing/Variance.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Typing/Variance.hs -------------------------------------------------------------------------------- /src/Util/Env.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Util/Env.hs -------------------------------------------------------------------------------- /src/Util/Error.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Util/Error.hs -------------------------------------------------------------------------------- /src/Util/PrettyPrint.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Util/PrettyPrint.hs -------------------------------------------------------------------------------- /src/Util/Scope.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/src/Util/Scope.hs -------------------------------------------------------------------------------- /stack.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/stack.yaml -------------------------------------------------------------------------------- /tests/correct/Class.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/Class.vrv -------------------------------------------------------------------------------- /tests/correct/Enum.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/Enum.vrv -------------------------------------------------------------------------------- /tests/correct/Fixtures/A.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/Fixtures/A.vrv -------------------------------------------------------------------------------- /tests/correct/Fixtures/B.vrv: -------------------------------------------------------------------------------- 1 | enum D { C } 2 | -------------------------------------------------------------------------------- /tests/correct/Match.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/Match.vrv -------------------------------------------------------------------------------- /tests/correct/MathParser.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/MathParser.vrv -------------------------------------------------------------------------------- /tests/correct/TypeAlias.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/TypeAlias.vrv -------------------------------------------------------------------------------- /tests/correct/ad-hoc.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/ad-hoc.vrv -------------------------------------------------------------------------------- /tests/correct/applications.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/applications.vrv -------------------------------------------------------------------------------- /tests/correct/builtins.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/builtins.vrv -------------------------------------------------------------------------------- /tests/correct/example.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/example.vrv -------------------------------------------------------------------------------- /tests/correct/functions.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/functions.vrv -------------------------------------------------------------------------------- /tests/correct/generics.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/generics.vrv -------------------------------------------------------------------------------- /tests/correct/identities.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/identities.vrv -------------------------------------------------------------------------------- /tests/correct/if.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/if.vrv -------------------------------------------------------------------------------- /tests/correct/imports.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/imports.vrv -------------------------------------------------------------------------------- /tests/correct/lambda.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/lambda.vrv -------------------------------------------------------------------------------- /tests/correct/let.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/let.vrv -------------------------------------------------------------------------------- /tests/correct/literals.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/literals.vrv -------------------------------------------------------------------------------- /tests/correct/operators.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/operators.vrv -------------------------------------------------------------------------------- /tests/correct/parser-edge-cases.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/parser-edge-cases.vrv -------------------------------------------------------------------------------- /tests/correct/records.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/records.vrv -------------------------------------------------------------------------------- /tests/correct/scoping.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/scoping.vrv -------------------------------------------------------------------------------- /tests/correct/strict.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/strict.vrv -------------------------------------------------------------------------------- /tests/correct/substitution.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/substitution.vrv -------------------------------------------------------------------------------- /tests/correct/subtyping.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/subtyping.vrv -------------------------------------------------------------------------------- /tests/correct/typing.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/correct/typing.vrv -------------------------------------------------------------------------------- /tests/incorrect/Class.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/incorrect/Class.vrv -------------------------------------------------------------------------------- /tests/incorrect/ad-hoc.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/incorrect/ad-hoc.vrv -------------------------------------------------------------------------------- /tests/incorrect/builtins.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/incorrect/builtins.vrv -------------------------------------------------------------------------------- /tests/incorrect/enum-type-as-ctor.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/incorrect/enum-type-as-ctor.vrv -------------------------------------------------------------------------------- /tests/incorrect/enum.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/incorrect/enum.vrv -------------------------------------------------------------------------------- /tests/incorrect/lambda.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/incorrect/lambda.vrv -------------------------------------------------------------------------------- /tests/incorrect/match.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/incorrect/match.vrv -------------------------------------------------------------------------------- /tests/incorrect/operators.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/incorrect/operators.vrv -------------------------------------------------------------------------------- /tests/incorrect/records.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/incorrect/records.vrv -------------------------------------------------------------------------------- /tests/incorrect/types.vrv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/incorrect/types.vrv -------------------------------------------------------------------------------- /tests/lit.cfg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/tests/lit.cfg -------------------------------------------------------------------------------- /tests/requirements.txt: -------------------------------------------------------------------------------- 1 | lit 2 | OutputCheck 3 | -------------------------------------------------------------------------------- /verve: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/verve -------------------------------------------------------------------------------- /verve.cabal: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/verve.cabal -------------------------------------------------------------------------------- /vm/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/vm/Makefile -------------------------------------------------------------------------------- /vm/build/verve: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/vm/build/verve -------------------------------------------------------------------------------- /vm/main: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/vm/main -------------------------------------------------------------------------------- /vm/src/Block.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/vm/src/Block.cpp -------------------------------------------------------------------------------- /vm/src/Block.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/vm/src/Block.h -------------------------------------------------------------------------------- /vm/src/Bytecode.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/vm/src/Bytecode.h -------------------------------------------------------------------------------- /vm/src/Decoder.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/vm/src/Decoder.cpp -------------------------------------------------------------------------------- /vm/src/Decoder.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/vm/src/Decoder.h -------------------------------------------------------------------------------- /vm/src/Interpreter.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/vm/src/Interpreter.cpp -------------------------------------------------------------------------------- /vm/src/Interpreter.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/vm/src/Interpreter.h -------------------------------------------------------------------------------- /vm/src/Opcodes.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/vm/src/Opcodes.h -------------------------------------------------------------------------------- /vm/src/VM.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/vm/src/VM.cpp -------------------------------------------------------------------------------- /vm/src/VM.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/vm/src/VM.h -------------------------------------------------------------------------------- /vm/src/Value.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/vm/src/Value.h -------------------------------------------------------------------------------- /vm/src/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tadeuzagallo/verve-lang/HEAD/vm/src/main.cpp --------------------------------------------------------------------------------