Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Submit your .ss file via OWL-Space. You will need to use the "Intermediate Student" language to do Problem 18.1.15. If you want to use explicit lambda notation (anywhere the right hand side of a define statement), you will need to use the "Intermediate Student with lambda" language. You may use either intermediate level language for the entire assignment if you choose.

Required problems:

  1. 14.2.4

...

  1. 20 pts. Note: Be sure to compare list searching with tree searching, as the problem states.
  2. 16.3.3 20 pts.
    Notes:
  • Test every function thoroughly (5+ examples)
  • Be sure to include definitions for both variations of du-dir. The final sentence should read "storing a file or a directory in a dir
    structure costs 1 storage unit." In other words, given a dir structure, each
    directory entry (a file or a directory) contained therein costs 1 unit of
    storage for the bookkeeping data. For a file, this is in addition to the size
    of its data.
  1. 17.1.2 20 pts.
  2. 17.6.1

...

  1. 30 pts. Do the problem as specified in the book.

...


  1. Extra Credit: This problem can be solved more elegantly than the solution

...

  1. implied in the

...

  1. book. For the extra credit solution ignore the book's guidance on "writing

...

  1. functions that consume two

...

  1. complex inputs" in 17.5 and follow the guidance given in class on how to write a

...

  1. function that processes multiple inputs. Select one input as primary (the
    choice may be arbitrary in some cases). If you need to deconstruct a second

...

  1. argument, do it in a auxiliary function. Use only one design template in

...

  1. each function. Hint for solving this problem: only your auxiliary function,

...

  1. which has a contract and purpose statement almost identical to mergeshould be recursive (call itself) and it may need to deviate slightly from

...

  1. the structural recursion template.
  2. 17.7.1 10 pts.
    Note: Make sure you understand section 14.4 before working on this problem. Use

...

  1. this data definition as a starting point:
    Code Block
    
           ; expression
           ; An expression is one of:
           ; - a number
           ; - a symbol
           ; - (make-mul e1 e2) where e1 and e2 are expressions
           ; - (make-add e1 e2) where e1 and e2 are expressions
    

...

  1. You are required to extend this definition to include applications (that is,

...

  1. expressions like
    Code Block
    
    (* (f (+ 15 x)) (g x))

...

  1. Be sure to include a function

...

  1. template with your solution.
  2. 18.1.5, parts 1, 4, & 5
  3. 18.1.15

Optional problem for extra credit:

...