b016b9294b
DEV: filtering maps, lists, and tuples works.
2019-10-17 17:57:05 -05:00
8d7ca3d6c1
DEV: Maps over lists, strings, and tuples are working
2019-10-17 17:57:05 -05:00
4ba4355d37
MAINT: Cleaning up some warnings.
2019-10-17 17:57:05 -05:00
3dd0cc6794
DEV: Extract the environmentally shared pieces out
2019-10-17 17:57:05 -05:00
946a112eb4
DEV: Working Trace statements
2019-10-17 17:57:05 -05:00
2985d4258f
DEV: Ranges and Select expressions.
2019-10-17 17:57:05 -05:00
44178b601c
DEV: Fill in the include and import opcode generation.
2019-10-17 17:57:05 -05:00
100d963f41
DEV: Modules work now.
2019-10-17 17:57:05 -05:00
e998e582ae
DEV: Function calls work. Also wired up some of the bang opcode.
2019-10-17 17:57:04 -05:00
f9c3ebeb50
DEV: Translate fails into the Bang opcode.
2019-10-17 17:57:04 -05:00
8c39c3826c
DEV: LtEq, GtEq, and in operators work.
2019-10-17 17:57:04 -05:00
cd23430f5f
DEV: Complex Format expressions are supported now.
2019-10-17 17:57:04 -05:00
e3f9b685c6
DEV: SimpleFormat expressions work.
2019-10-17 17:57:04 -05:00
405ad2880e
DEV: Simple formatting works
2019-10-17 17:57:04 -05:00
422569c7b4
DEV: Tuple and List values are translatable.
2019-10-17 17:57:04 -05:00
52a66bae8b
DEV: Let bindings work.
2019-10-17 17:57:04 -05:00
c792d758d7
DEV: List indexing works.
2019-10-17 17:57:04 -05:00
40fc6fe15f
DEV: Modulus operator works.
2019-10-17 17:57:04 -05:00
a36322461e
DEV: And and Or operators work
2019-10-17 17:57:04 -05:00
48ea8b30ef
DEV: Type check expressions work.
2019-10-17 17:57:04 -05:00
2bfb1ee6fe
DEV: Regex binary expressions work.
2019-10-17 17:57:04 -05:00
c19a51424f
DEV: Not expressions compile
2019-10-17 17:57:04 -05:00
badf370dfb
DEV: NotEqual and other comparisons fixes.
2019-10-17 17:57:04 -05:00
059c336990
DEV: Grouped Expressions compile.
2019-10-17 17:57:04 -05:00
01a379f79c
DEV: Simple binary expressions compile.
2019-10-17 17:57:04 -05:00
27ac204c48
DEV: Simple scalar expressions compile.
2019-10-17 17:57:04 -05:00
9f31a16b93
DEV: A first pass at the runtime.
...
Minus the actual compiling of a file in imports.
2019-10-17 17:57:04 -05:00
a7aab10723
DEV: The beginnings of a runtime for the opcode vm.
2019-10-17 17:57:04 -05:00
fa2ad0c5a9
REFACTOR: Code organization.
2019-10-17 17:57:04 -05:00
102f0f5ae1
DEV: Indexing operation.
2019-10-17 17:57:04 -05:00
a50eb46c5e
FIX: Rc instead of borrows because the lifetimes get unweildy.
2019-10-17 17:57:03 -05:00
3cb73e9543
FIX test input to be clear about the success condition.
2019-10-17 17:57:03 -05:00
ed143b6a00
REFACTOR: modules and functions carry around a reference to their code.
2019-10-17 17:57:03 -05:00
fa294a2188
DEV: Default test case for select expressions.
2019-10-17 17:57:03 -05:00
c1f84c4861
REFACTOR: JumpIfNotEqual -> SelectJump
2019-10-17 17:57:03 -05:00
673cb8f8b7
MAINT: Cleanup up the InitThunk operation to use i32
2019-10-17 17:57:03 -05:00
996d8821d7
DEV: Unit test verifying we can implement a select expression.
...
* Also unify our jumps as relative jumps
2019-10-17 17:57:03 -05:00
aac263be2c
DEV: DSL for table based testing using macros.
2019-10-17 17:57:03 -05:00
3bb6f6e8eb
DEV: JumpIfFalse op code.
2019-10-17 17:57:03 -05:00
56174cbe52
DEV: Make it an error to reuse a name in a scope.
2019-10-17 17:57:03 -05:00
da3e235942
DEV: Function and Module operations
2019-10-17 17:57:03 -05:00
7242a68ff9
MAINT: Cleanup warnings and unnecessary qualifiers.
2019-10-17 17:57:03 -05:00
53c7dfb1ce
DEV: Conditional Jumps
2019-10-17 17:57:03 -05:00
7de2e1c349
DEV: Equality Ops
2019-10-17 17:57:03 -05:00
dc7437a8c1
DEV: Implement Jumping
2019-10-17 17:57:03 -05:00
04480663e8
TESTS: Expresions as field values in lists and tuples.
2019-10-17 17:57:03 -05:00
c6037f6ea7
REFACTOR: reference the Composite types directly.
2019-10-17 17:57:03 -05:00
b6c208fb97
REFACTOR: Keep the bytecodes in memory
...
This will help us implement functions and modules.
Also move each of the operations into a separate method.
This will help the readability of our run method.
2019-10-17 17:57:03 -05:00
d7da091b83
DEV: List and Tuple construction.
2019-10-17 17:57:03 -05:00
d4b7bdcd46
DEV: Basic primitives and operations on them in a VM Stack Machine.
2019-10-17 17:57:03 -05:00