about summary refs log tree commit diff stats
path: root/archive/1.vm.arc/tangle.mu
diff options
context:
space:
mode:
Diffstat (limited to 'archive/1.vm.arc/tangle.mu')
-rw-r--r--archive/1.vm.arc/tangle.mu35
1 files changed, 0 insertions, 35 deletions
diff --git a/archive/1.vm.arc/tangle.mu b/archive/1.vm.arc/tangle.mu
deleted file mode 100644
index 3e73dd89..00000000
--- a/archive/1.vm.arc/tangle.mu
+++ /dev/null
@@ -1,35 +0,0 @@
-; To demonstrate tangle directives, we'll construct a factorial function with
-; separate base and recursive cases. Compare factorial.mu.
-; This isn't a very realistic example, just a simple demonstration of
-; possibilities.
-
-(function factorial [
-  (default-space:space-address <- new space:literal 30:literal)
-  (n:integer <- next-input)
-  { begin
-    base-case
-  }
-  recursive-case
-])
-
-(after base-case [
-  ; if n=0 return 1
-  (zero?:boolean <- equal n:integer 0:literal)
-  (break-unless zero?:boolean)
-  (reply 1:literal)
-])
-
-(after recursive-case [
-  ; return n*factorial(n-1)
-  (x:integer <- subtract n:integer 1:literal)
-  (subresult:integer <- factorial x:integer)
-  (result:integer <- multiply subresult:integer n:integer)
-  (reply result:integer)
-])
-
-(function main [
-  (1:integer <- factorial 5:literal)
-  ($print (("result: " literal)))
-  (print-integer nil:literal/terminal 1:integer)
-  (print-character nil:literal/terminal ((#\newline literal)))
-])