From be338a13488a219bed1ae96d5c264d09c4c35efd Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Tue, 20 Jul 2021 15:53:43 +0530 Subject: ccwl: Support default values for arguments in lambda**. * ccwl/utils.scm (lambda**): Support default values for arguments, both unary and n-ary. * tests/utils.scm ("lambda** with default values"): New test. --- tests/utils.scm | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'tests/utils.scm') diff --git a/tests/utils.scm b/tests/utils.scm index 6b38708..473bd45 100644 --- a/tests/utils.scm +++ b/tests/utils.scm @@ -64,6 +64,12 @@ (list a b foo bar)) 1 2 #:foo 123 #:bar 1 2 3)) +(test-equal "lambda** with default values" + '(1 2 123 9 (321 456) (7) (3 2 1)) + ((lambda** (foo aal #:key vale (pal 9) #:key* naal (irandu 7) (sol 3 2 1)) + (list foo aal vale pal naal irandu sol)) + 1 2 #:vale 123 #:naal 321 456)) + (test-assert "syntax-lambda**" (equal? (list #'1 #'2 #'123 (list #'1 #'2 #'3)) ((syntax-lambda** (a b #:key foo #:key* bar) -- cgit v1.2.3