From 7b7bf727da3250907284368b98b0083a4b4e2386 Mon Sep 17 00:00:00 2001 From: mryouse Date: Sat, 3 Jun 2023 20:22:18 +0000 Subject: initial commit --- p99/p17.neb | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 p99/p17.neb (limited to 'p99/p17.neb') diff --git a/p99/p17.neb b/p99/p17.neb new file mode 100644 index 0000000..d586e87 --- /dev/null +++ b/p99/p17.neb @@ -0,0 +1,17 @@ +; P17 Split a list into two parts; the length of the first part is given. +; Do not use any predefined functions. + +(def a (list "a" "b" "c" "d" "e" "f" "g" "h" "i" "k")) + +(func spl (lst idx) + (spl lst idx (list))) + +(func spl (lst idx acc) + (if (eq? idx 0) + (list acc lst) + (spl (rest lst) (-- idx) (append acc (first lst))))) + +(func -- (num) (- num 1)) + +(print (->string a)) +(print (->string (spl a 3))) -- cgit v1.2.3