From 2a4088119cf41175457414dfa59bd4064b8f0562 Mon Sep 17 00:00:00 2001 From: Kartik Agaram Date: Wed, 1 Jan 2020 17:04:37 -0800 Subject: 5852 --- archive/1.vm.arc/tangle.mu | 35 ----------------------------------- 1 file changed, 35 deletions(-) delete mode 100644 archive/1.vm.arc/tangle.mu (limited to 'archive/1.vm.arc/tangle.mu') 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))) -]) -- cgit 1.4.1-2-gfad0