changeset 298:647f7a2d253b

Committing a simple macro example I put together a while ago
author Michael Pavone <pavone@retrodev.com>
date Thu, 24 Jul 2014 23:55:59 -0700
parents abe3141caefe
children c0561cb06ee3 ed908b7fcec6
files samples/fibmacro.tp
diffstat 1 files changed, 21 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/samples/fibmacro.tp	Thu Jul 24 23:55:59 2014 -0700
@@ -0,0 +1,21 @@
+#{
+fib <- :n {
+	if: n < 2 {
+		1
+	} else: {
+		(fib: n-1) + (fib: n-2)
+	}
+}
+fibm <- macro: :n {
+	eval: n :n {
+		fib: n
+	} else: {
+		quote: (fib: n)
+	}
+}
+
+main <- {
+	print: (string: (fibm: 20)) . "\n"
+}
+
+}