From 4571c3cb409808942ecbe353b1ffa6794cabc557 Mon Sep 17 00:00:00 2001 From: ubq323 Date: Mon, 1 Jul 2024 20:07:38 +0100 Subject: add map test --- tests/map.bth | 15 +++++++++++++++ tests/map.out | 2 ++ 2 files changed, 17 insertions(+) create mode 100644 tests/map.bth create mode 100644 tests/map.out diff --git a/tests/map.bth b/tests/map.bth new file mode 100644 index 0000000..aa9f45e --- /dev/null +++ b/tests/map.bth @@ -0,0 +1,15 @@ +(set map' (fn (f ix in out) + (if (< ix (len in)) + (let (elem (in ix) + felem (f elem) + newix (+ 1 ix)) + (set (out ix) felem) + (map' f newix in out)) + out))) +(set map (fn (f in) (map' f 0 in (arr)))) + +(let (a [1 2 3 4 5 6 7 8 9] + f1 (fn (x) (* 10 x)) + f2 (fn (x) (* x x))) + (say (map f1 a)) + (say (map f2 a))) diff --git a/tests/map.out b/tests/map.out new file mode 100644 index 0000000..41f7fac --- /dev/null +++ b/tests/map.out @@ -0,0 +1,2 @@ +[ 10 20 30 40 50 60 70 80 90 ] +[ 1 4 9 16 25 36 49 64 81 ] -- cgit v1.2.3