wisp
 
(Arne Babenhauserheide)
2016-11-08: three witches: implement basic Scene syntax

three witches: implement basic Scene syntax

diff --git a/examples/ensemble-estimation.w b/examples/ensemble-estimation.w
--- a/examples/ensemble-estimation.w
+++ b/examples/ensemble-estimation.w
@@ -282,8 +282,8 @@ define : flatten li
 
 define : main args
     let*
-      : ensemble-member-count 64
-        ensemble-member-plot-skip 4
+      : ensemble-member-count 256
+        ensemble-member-plot-skip 16
         optimized : EnSRT H x^b P y⁰ R y⁰-pos ensemble-member-count
         x-opt : list-ref optimized 0
         x-deviations : list-ref optimized 1
diff --git a/examples/enter-three-witches.w b/examples/enter-three-witches.w
--- a/examples/enter-three-witches.w
+++ b/examples/enter-three-witches.w
@@ -1,5 +1,6 @@
 #!/usr/bin/env sh
 # -*- wisp -*-
+guile -L $(dirname $(dirname $(realpath "$0"))) -c '(import (wisp-scheme) (language wisp spec))'
 exec guile -L $(dirname $(dirname $(realpath "$0"))) --language=wisp -e '(@@ (examples enter-three-witches) main)' -s "$0" "$@"
 ; !#
 
@@ -196,6 +197,15 @@ define-syntax Enter
    : _ b ...
      #' begin #t
 
+define-syntax Scene
+  lambda (x)
+    syntax-case x ()
+      : _ thisscene args ...
+        with-syntax ((c (datum->syntax x (module-name (current-module)))))
+          #` begin ; FIXME: this currently requires the Scene identifier to be a valid symbol -> cannot use "Scene 1"
+             define-module (scene thisscene)
+               . #:use-module c
+             re-export Scene
 
 define : main args
   Enter : First Witch
diff --git a/examples/ild.w b/examples/ild.w
--- a/examples/ild.w
+++ b/examples/ild.w
@@ -1,6 +1,9 @@
 #!/usr/bin/env sh
 # -*- wisp -*-
-exec guile -L $(dirname $(dirname $(realpath "$0"))) --language=wisp -l $(dirname $(realpath "$0"))/enter-three-witches.w -s "$0" "$@"
+D="$(dirname $(realpath "$0"))"
+W="$(dirname $(dirname $(realpath "$0")))"
+guile -L "$W" -c '(import (wisp-scheme) (language wisp spec))'
+exec guile -L "$W" --language=wisp -l "$D/enter-three-witches.w" -s "$0" "$@"
 ; !#
 
 import : examples enter-three-witches