CS 257L Recitation Webpage (Spring 2008)

TA:Lena Lopez
Email:kinopian@cs.unm.edu
Recitation Schedule:Mondays 12:00-12:50PM in Tapy 219
Tuesdays 12:30-1:20PM in ME 220
Office Hours:Monday 11:00-12:00PM
Tuesdays 3:00-4:00PM
Office:FEC 309


Grader:John Harger
Email:jharger@cs.unm.edu


Homework

Turn in homework via WebCT. The grader, John Harger, will receive them and grade them.
  • Put all Scheme functions in one .scm file with each problem clearly labeled.
  • Non-Scheme answers can go in a separate .txt file or in the same .scm file inside of comments so they don't produce errors in MzScheme.
  • Put the following header in all of your files (commented out in .scm files):
    CS 257 Assignment #
    Name
    Email
  • Please do not send me or John your homework or projects via email!


    News

    3/3/08, Monday
    Homework 8: Due, 3/5/08, Wednesday, 11:59PM:
    Scheme and the Art of Programming, Chapter 4
    Exercises 4.3, 4.8, 4.14

    2/28/08, Thursday
    Homework 7: Due, 3/3/08, Monday, 11:59PM:
    Roulette

    2/17/08, Sunday
    Homework 5: Due, 2/20/08, Wednesday, 11:59PM:
    Deterministic Context-Free Language checker

    2/4/08, Monday
    Homework 4: Due 2/5/08, Tuesday, 11:59PM:
    Prime factorization
    Solution

    1/29/08, Tuesday
    Homework 3: Due 2/3/08, Sunday, 11:59PM:
    Examples from Chapter 2 of "The Little Schemer"

    1/29/08, Tuesday
    Homework 2: Due 1/29/08, Tuesday, 11:59PM:
    first-3 function

    1/25/08, Friday
    Homework 1: Due 1/27/08, Sunday, 11:59PM:
    1. Examples from Chapter 1 of "The Little Schemer"
    2. Make me a peanut butter and jelly sandwich

    1/23/08, Wednesday
    Lecture has been cancelled today. There is also no recitation this week. The first 2 recitation sessions will meet on the week of 1/28.

    Weekly Lessons

    Week 6: 3/3 + 3/4
    Quiz 2

    Week 5: 2/25 + 2/26
    Loading multiple files

    Week 4: 2/18 + 2/19
    Flat recursion
    Deep recursion
    Procedural Abstraction

    Week 3: 2/11 + 2/12
    Homework 4 Solution

    Week 2: 2/4 + 2/5
    Quiz 1 Solutions
    Practice writing recursive functions

    Week 1: 11/28 + 11/29
    1. Administrivia
    2. Prefix notation


    Useful Links

    CS 257 Class Webpage
    Download MzScheme
    Download DrScheme
    Download GNU Emacs
    Download XEmacs
    Download Ghostscript and/or Ghostview
    Emacs Quick Reference

    Setting Up Plumbing Graphics

    1. Download Ghostscript and/or Ghostview.
    2. Download the Plumbing Graphics source code into a .scm file.
    3. In the source code, uncomment the appropriate line starting with "(define ghostscript-path...)". You may have to modify the path to Ghostscript/Ghostview.
    4. In MzScheme, type "(load ".scm")", where is the name that you gave to the Plumbing Graphics source file. This will load Plumbing Graphics into MzScheme and you can now use the commands to draw graphics.

    Getting Started (Unix, Cygwin)

    Setup:
    1. Download MzScheme and GNU Emacs.
    2. Copy the contents from this file to a file called .emacs in your home directory. If it doesn't exist, create it. You may have to edit the line (setq scheme-program-name "mzscheme") so that the string "mzscheme" is actually the path to the MzScheme program. If you're using the CS machines, you don't need to worry about this.

    Using MzScheme in Emacs:
    1. Press Esc-x (hold Esc and then press x) to open a minibuffer at the bottom of the window and type "run-scheme" in it.
    2. Press Ctrl-x 2 to split the window in half.
    3. Open your Scheme file in the top pane. MzScheme will be running in the other.
    4. To test one of your procedures, place your cursor somewhere in the procedure that you want to test and press Ctrl-x-ctrl-e.


    Getting Started (Windows)

    Setup:
    1. Download MzScheme and XEmacs.
    2. Copy the contents from this file to a file called init.el in the .xemacs directory which is in your home directory. If neither the directory nor the file exists, create them in a command prompt as Windows will not let you create a directory starting with a dot. So the full path to it will most likely be something like C:\Documents and Settings\username\.xemacs\init.el. You may have to edit the line (setq scheme-program-name "mzscheme") so that the string "mzscheme" is actually the path to mzscheme.exe.

    Using MzScheme in Emacs:
    (Same as in Unix, Cygwin version).

    Or if you want to make your life easier, just use DrScheme! Just install, run, and program!