This is an all-ruby implementation of choose/fail nondeterministic programming with branch cut, as described in Chapter 22 of Paul Graham's <em>On Lisp</em>[1], or Section 4.3 of <em>SICP</em>[2]. Due to Ruby containing a true call/cc, this is a much straighter port of Paul Graham's scheme version of this code than his Common Lisp or my C versions are. :-)

Required Ruby Version

None

Authors

Jim Wise

Versions

  1. 0.13 March 29, 2013 (17 KB)
  2. 0.12 January 30, 2012 (16 KB)
  3. 0.11 January 12, 2012 (16 KB)
  4. 0.10.1 January 10, 2012 (15 KB)
  5. 0.10 September 22, 2011 (15 KB)
Show all versions (7 total)

SHA 256 checksum