The Mesh base language includes everything related to the language syntax (e.g.: parsing, lexing, AST), type system (e.g.: type inference) and evaluation. In terms of language features, this epic includes basic types literals, variable binding including function definitions (i.e.: let binding) and built-in arithmetic and boolean operators. The Mesh standard library (e.g.: utility functions) is not part of this epic.
Initiative / goal
The goal is to have a working language (parsing, type checking, evaluation) which can then be extended with additional types and modules (i.e.: the Mesh standard library).
Hypothesis
The Mesh base language implementation will be tested with a suite of tests where code snippets are type-checked and evaluated.
Acceptance criteria and must have scope
The Mesh Engine should be able to parse, infer the type of, and evaluate all basic Mesh expressions (see individual issues).
Description
The Mesh base language includes everything related to the language syntax (e.g.: parsing, lexing, AST), type system (e.g.: type inference) and evaluation. In terms of language features, this epic includes basic types literals, variable binding including function definitions (i.e.:
let
binding) and built-in arithmetic and boolean operators. The Mesh standard library (e.g.: utility functions) is not part of this epic.Initiative / goal
The goal is to have a working language (parsing, type checking, evaluation) which can then be extended with additional types and modules (i.e.: the Mesh standard library).
Hypothesis
The Mesh base language implementation will be tested with a suite of tests where code snippets are type-checked and evaluated.
Acceptance criteria and must have scope
The Mesh Engine should be able to parse, infer the type of, and evaluate all basic Mesh expressions (see individual issues).
Stakeholders
N/A
Timeline
This epic should be done in around a week.