about summary refs log tree commit diff stats
path: root/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.2/count5.scm
diff options
context:
space:
mode:
authorelioat <elioat@tilde.institute>2023-08-23 07:52:19 -0400
committerelioat <elioat@tilde.institute>2023-08-23 07:52:19 -0400
commit562a9a52d599d9a05f871404050968a5fd282640 (patch)
tree7d3305c1252c043bfe246ccc7deff0056aa6b5ab /js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.2/count5.scm
parent5d012c6c011a9dedf7d0a098e456206244eb5a0f (diff)
downloadtour-562a9a52d599d9a05f871404050968a5fd282640.tar.gz
*
Diffstat (limited to 'js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.2/count5.scm')
-rw-r--r--js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.2/count5.scm14
1 files changed, 14 insertions, 0 deletions
diff --git a/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.2/count5.scm b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.2/count5.scm
new file mode 100644
index 0000000..16f4a41
--- /dev/null
+++ b/js/games/nluqo.github.io/~bh/61a-pages/Lectures/3.2/count5.scm
@@ -0,0 +1,14 @@
+(define make-count
+  (let ((glob 0))
+    (lambda ()
+      (let ((loc 0))
+        (lambda (msg)
+          (cond ((eq? msg 'local)
+                 (lambda ()
+		   (set! loc (+ loc 1))
+		   loc))
+                ((eq? msg 'global)
+                 (lambda ()
+		   (set! glob (+ glob 1))
+		   glob))
+                (else (error "No such method" msg)) ))))))