From 3bd2b76b06df2cae29900e213924b02b46ffcd3e Mon Sep 17 00:00:00 2001 From: Javier Sancho Date: Thu, 21 Jun 2012 21:29:08 +0200 Subject: [PATCH] Introducing FRP concepts --- src/gacela.scm | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/gacela.scm b/src/gacela.scm index 7e96a80..2b9a19e 100644 --- a/src/gacela.scm +++ b/src/gacela.scm @@ -348,8 +348,8 @@ ((car bricks)) (draw-bricks (cdr bricks))))) -(define (show-brick brick) - (set! active-bricks (cons brick active-bricks))) +(define-macro (show-brick brick-name) + `(set! active-bricks (cons (lambda () (,brick-name)) active-bricks))) (define-macro (simple-brick brick-code) (let ((name (gensym))) @@ -362,8 +362,10 @@ ;;; Primitive bricks -(define (draw-square . args) - (simple-brick (apply video:draw-square args))) +(define-macro (draw-square . args) + `(simple-brick (apply video:draw-square ',args))) + +(re-export video:draw-square) (module-map (lambda (sym var) -- 2.39.2