view samples/recursive_closure.tp @ 242:0e7982adc76b

Make the successful return value from a match expression be truthy and the failure value false. This avoids an extra method call when checking the result and avoids allocating a new object when a match fails.
author Mike Pavone <pavone@retrodev.com>
date Sun, 05 Jan 2014 20:56:25 -0800
parents 3a169ebb3224
children
line wrap: on
line source

#{
	main <- {
		foo <- :n {
			if: n < 10 {
				true
			} else: {
				foo <- :n { n }
			}
			foo: n + 1
		}
		print: (string: (foo: 0))
	}
}