view samples/slist.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 18598163e3ef
children
line wrap: on
line source

#{
	sum <- :l {
		l fold: 0 with: :acc el {
			acc + el
		}
	}
	main <- {
		print: (string: (sum: [])) . "\n"
		print: (string: (sum: [1 2 3 4])) . "\n"
		print: (string: (sum: 1 | 2 | 3 | 4 | [])) . "\n"
		print: (string: (sum: [1 2] . [3 4])) . "\n"
	}
}