X-Git-Url: https://thelambdalab.xyz/gitweb/index.cgi?p=scheme.forth.jl.git;a=blobdiff_plain;f=src%2Fscheme-library.scm;h=a420c70ac2ff4922c226066913c77537a28352a7;hp=2c6146eb57a80948261ef3a552e14188416c1f58;hb=7575297b49c6d06e524b9dff038083a863720b53;hpb=6c019df6b459c86bf5de4fd817db2316038935da diff --git a/src/scheme-library.scm b/src/scheme-library.scm index 2c6146e..a420c70 100644 --- a/src/scheme-library.scm +++ b/src/scheme-library.scm @@ -253,6 +253,14 @@ `((lambda ,(map (lambda (x) (car x)) args) ,@body) ,@(map (lambda (x) (cadr x)) args))) +; let* + +(define-macro (let* args . body) + (if (null? args) + `(let () ,@body) + `(let (,(car args)) + (let* ,(cdr args) ,@body)))) + ; while (define-macro (while condition . body)