CS 343: Programming Assignments

Song: "God Wrote in Lisp", Lyrics by Bob Kanefsky, sung by Julia Ecklar.

Lisp Cartoon

Programming assignments are to be done in Common Lisp (you may use Scheme for the first few assignments if you prefer).

You can download Gnu Common Lisp free for Linux or for Windows.

Lisp is easier to use through the Emacs editor. Gnu Emacs can be dowloaded free, for either Linux or Windows. If you wish to use Gnu Common Lisp (GCL), you can copy the files /projects/cs343/.emacs and /projectscs343/.lisp.el to your directory; these facilitate use of Lisp within emacs. You will also need to have /p/bin in your path, since xgcl is /p/bin/xgcl. This can be done by adding the following line to your .login file:

setenv PATH {$PATH}:/p/bin

If you wish to use Allegro Common Lisp (ACL), see Using Lisp on Local Machines and copy Prof. Mooney's file instead.

To use Lisp within emacs, first start emacs . Then give the command C-x 3 (control-x 3) to split the window vertically into two halves (or C-x 2 (control-x 2) to split horizontally). With the cursor in one half-window, give the command M-x run lisp (meta-x run lisp) to start Lisp. You now can run Lisp within one window and edit your Lisp code in the other half. Putting your cursor at the start of a function definition in one window and giving the command C-M-z (control-meta-z) will send the definition to Lisp. You should often save your Lisp source code to a file; you can load the file into Lisp: (load "myfile.lsp") .

Program files to be used with the assignments are provided in the directory /projects/cs343/ or ftp://ftp.cs.utexas.edu/pub/novak/cs343/; these are described by Program File Descriptions.


All programs must be individual work.

Other Resources:

Gordon S. Novak Jr.