1.1 KiB
1.1 KiB
TODO
- Remove Dictionaries
- Make imports expect just a string, rather than an entire expression
- Remove Union types
- Fix token locations
- Make Return just a regular statement
StructType.{args=...}
syntax[:ElementType, elements...]
syntax- Tuple element syntax
a.0, a.1
, instead of allowing arbitrary indices into the tuple. This will allow for easier typechecking for tuples - Proper error reporting with locations
- Make Typechecking a step before anything is interpreted
- Implicit
[elements...]
/.{args=...}
/.Member(values...)
syntax - Destructring of tuples and structs
(a, b) = some_tuple;
.{age=a, name=b} = some_struct;
let
keyword to do runtime destructuring for tuples, structs, listsassert let (0, value) = some_tuple;
assert let .{a=0, b=age} = some_struct;
if let .Some(value) = result { ... }
case [first, second | rest] { ... }
- Here
let
is not used, but it does the same thing asif let
, just in a match context
- Here
- Compile the program to bytecode and interpret the bytecode instead
- Compile the bytecode to assembly