]> git.jsancho.org Git - gacela.git/blobdiff - src/examples/making-systems.scm
More verbose and powerful system definition
[gacela.git] / src / examples / making-systems.scm
index 0addc1bf122d1ca923bfc5b74ea3fb49cae7992b..c049a904bb2e1b3d8ea5fd9aaed4d16e1c54353a 100644 (file)
 
 (define-component a x y)
 
-(define-system (s1)
-  (lambda (e)
-    (list (new-entity (make-a 1 2))
-         (new-entity (make-a 10 20)))))
-
-(define-system (s2 a)
-  (lambda (e)
-    (for-each
-     (lambda (e1)
-       (format #t "Key: ~a  Component: ~a~%" (get-key e1) (get-component 'a e1)))
-     e)
-    '()))
-
+(define-system s1 ()
+  (list (new-entity (make-a 1 2))
+       (new-entity (make-a 10 20))))
+
+(define-system s2 ((with-a (a)))
+  (for-each
+   (lambda (e)
+     (format #t "Key: ~a  Component: ~a~%" (get-key e) (get-component 'a e)))
+   with-a)
+  '())
+  
 (define (making-systems)
   (let ((entities '())
        (components '()))