From 26a7542d18512d94da1360d579e6ee6ec02f91da Mon Sep 17 00:00:00 2001 From: Justin Ethier Date: Tue, 1 Sep 2020 18:57:23 -0400 Subject: [PATCH] Enclose (include) code in (begin) --- scheme/cyclone/libraries.sld | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/scheme/cyclone/libraries.sld b/scheme/cyclone/libraries.sld index beaac610..d99d3793 100644 --- a/scheme/cyclone/libraries.sld +++ b/scheme/cyclone/libraries.sld @@ -15,7 +15,7 @@ ;;;; (define-library (scheme cyclone libraries) (import (scheme base) - ;; Debugging: (scheme write) + ;; Debug only (scheme write) (scheme read) (scheme process-context) (scheme cyclone util) @@ -243,9 +243,17 @@ (begin? (and (pair? expr) (not (member (car expr) '(import export c-linker-options include-c-header)))))) - (if begin? - (cons `(begin ,expr) acc) - (cons expr acc)))) +;(write `(DEBUG ,begin? ,(if (pair? expr) (lambda? (car expr)) #f) ,expr)) +;(newline) + (cond + ((and (pair? expr) + (lambda? (car expr)) + (eq? '() (lambda->formals (car expr)))) + (cons `(begin ,@(lambda->exp (car expr))) acc)) + (begin? + (cons `(begin ,expr) acc)) + (else + (cons expr acc))))) (else (cons d acc)) )) '()