1
1
mirror of https://github.com/kanaka/mal.git synced 2024-09-19 09:38:28 +03:00
mal/impls/tests/perf3.mal
Joel Martin 8a19f60386 Move implementations into impls/ dir
- Reorder README to have implementation list after "learning tool"
  bullet.

- This also moves tests/ and libs/ into impls. It would be preferrable
  to have these directories at the top level.  However, this causes
  difficulties with the wasm implementations which need pre-open
  directories and have trouble with paths starting with "../../". So
  in lieu of that, symlink those directories to the top-level.

- Move the run_argv_test.sh script into the tests directory for
  general hygiene.
2020-02-10 23:50:16 -06:00

21 lines
685 B
Plaintext

(load-file "../lib/load-file-once.mal")
(load-file-once "../lib/threading.mal") ; ->
(load-file-once "../lib/perf.mal") ; run-fn-for
(load-file-once "../lib/test_cascade.mal") ; or
;;(prn "Start: basic macros/atom test")
(def! atm (atom (list 0 1 2 3 4 5 6 7 8 9)))
(println "iters over 10 seconds:"
(run-fn-for
(fn* []
(do
(or false nil false nil false nil false nil false nil (first @atm))
(cond false 1 nil 2 false 3 nil 4 false 5 nil 6 "else" (first @atm))
(-> (deref atm) rest rest rest rest rest rest first)
(swap! atm (fn* [a] (concat (rest a) (list (first a)))))))
10))
;;(prn "Done: basic macros/atom test")