For this course, we recommend using Chez Scheme Version 7.4d (which is installed on CS department machines) or Petite Chez Scheme Version 7.4d (which you can download here). Version 7.9.3 is the current prerelease of Chez Scheme/Petite Chez Scheme with complete support for R6RS Scheme. However, if you use Version 7.9.3, be aware that some of the tools we use in this course may be incompatible with R6RS.
Fair warning: although it's up to you which Scheme you use, a few of the tools we use in this course may be incompatible with implementations other than Chez Scheme.
test.scm file): (test "factorial-5" (fact 5) 120)
If you're interested in miniKanren development, check out the project site on Google Code!
mk.scm automatically)mk.scm automatically)The course staff use and endorse the Emacs text editor.
dot_emacs_full.txt to .emacs before using it..emacs file, you must download the dot_emacs_dot_d.zip file, unzip the file, and rename the resulting directory .emacs.d. You must then update the load-path in your .emacs file to point to the location of the .emacs.d directory. Contact the AIs if you cannot unzip the dot_emacs_dot_d.zip file, or otherwise have problems configuring Emacs.product procedure written three ways: in accumulator-passing style, in continuation-passing style, and in direct style using call/cc.