summaryrefslogtreecommitdiff
path: root/src/Interpreter/Accum.hs
Commit message (Collapse)AuthorAge
* WIP better zero/plus, fixing Accum (...)Tom Smeding2024-09-13
| | | | | | | | | | | | | The accumulator implementation was wrong because it forgot (in accumAdd) to take into account that values may be variably-sized. Furthermore, it was also complexity-inefficient because it did not build up a sparse value. Thus let's go for the Haskell-interpreter-equivalent of what a real, fast, compiled implementation would do: just a tree with mutable variables. In practice one can decide to indeed flatten parts of that tree, i.e. using a tree representation for nested pairs is bad, but that should have been done _before_ execution and for _all_ occurrences of that type fragment, not live at runtime by the accumulator implementation.
* Interpreter, some operationsTom Smeding2024-09-12
|
* Finish Accum implementationTom Smeding2024-09-11
|
* More WIP interpreterTom Smeding2024-09-11
|
* WIP interpreterTom Smeding2024-09-06