d763e25638
- Add lib/cljnim_pvec.nim: 32-way HAMT Persistent Vector with structural sharing - Migrate ckVector from seq[CljVal] to PersistentVector[CljVal] in runtime - Fix recursive pushLeaf bug (nil nodes at depth > 2) - Fix defn/if return value bug: replace discard with result = in proc bodies - Fix cljNth to accept CljVal index - Add len and [] overloads for PersistentVector seq compatibility - Add tests/test_pvec.nim (14 tests) - Update .gitlab-ci.yml to nim:2.2.10 and add test_pvec - Update docs/ROADMAP.md and add PHASE5_HAMT.md
33 lines
656 B
YAML
33 lines
656 B
YAML
image: nimlang/nim:2.2.10
|
|
|
|
stages:
|
|
- test
|
|
- build
|
|
|
|
test:
|
|
stage: test
|
|
script:
|
|
- nim c -o:cljnim src/cljnim.nim
|
|
- nim c -r tests/test_reader.nim
|
|
- nim c -r tests/test_emitter.nim
|
|
- nim c -r tests/test_pvec.nim
|
|
- ./cljnim compile examples/hello.clj /tmp/hello.nim
|
|
- nim c --path:lib -r /tmp/hello.nim
|
|
- ./cljnim compile examples/math.clj /tmp/math.nim
|
|
- nim c --path:lib -r /tmp/math.nim
|
|
artifacts:
|
|
paths:
|
|
- cljnim
|
|
expire_in: 1 week
|
|
|
|
build-release:
|
|
stage: build
|
|
only:
|
|
- main
|
|
script:
|
|
- nim c -d:release -o:cljnim src/cljnim.nim
|
|
artifacts:
|
|
paths:
|
|
- cljnim
|
|
expire_in: 1 month
|