Refactor map and record representation

Replaces the use of `BTreeMap` and `HashMap` for maps and records with
`Vec<(Keyword, Value)>` and `Vec<(Keyword, StaticType)>`. This
simplifies the data structure and allows for ordered iteration, which is
important for serialization and comparison.

Also updates the `unpack` function in `vm.rs` to handle records as well
as lists when destructuring.
This commit is contained in:
Michael Schimmel
2026-02-20 15:10:07 +01:00
parent 6ddc1c0a11
commit ca2c85a8a4
6 changed files with 60 additions and 37 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
;; Complex Data Structure Test
;; Benchmark: 51.4us
;; Output: {:input 10, :name "Fibonacci", :output 55}
;; Output: {:name "Fibonacci", :input 10, :output 55}
(do
(def fib (fn [n]
(if (< n 2)