capitalize c1,c2,c3
[lambda.git] / assignment6.mdwn
index b21050b..7a2bb0f 100644 (file)
@@ -2,10 +2,11 @@
 build a system that will evaluate arithmetic expressions.  Instead of
 returning a simple integer as a result, it will deliver the correct
 answer along with a count of the number of operations performed during
-the calculuation.  That is, the desired behavior should be like this:
+the calculation.  That is, the desired behavior should be like this:
 
-    # lift ( + ) (lift ( / ) (unit 20) (unit 2)) (lift ( * ) (unit 2) (unit 3)) 0;;
-    - : int * int = (16, 3)
+                 # lift ( + ) (lift ( / ) (unit 20) (unit 2)) 
+                                  (lift ( * ) (unit 2) (unit 3)) 0;;
+                     - : int * int = (16, 3)
 
     Here, `lift` is the function that uses `bind` to prepare an ordinary
 arithmetic operator (such as addition `( + )`, division `( / )`, or
@@ -16,12 +17,12 @@ steps.  By the way, that zero at the end provides the monadic object
 with a starting point (0 relevant computations have occurred previous
 to the current computation).
 
-Assume for the purposes of this excercise that no one ever tries to
+   Assume for the purposes of this excercise that no one ever tries to
 divide by zero (so there should be no int option types anywhere in
 your solution).
 
-You'll need to define a computation monad type, unit, bind, and lift.
-We encourage you to consider this hint: [[Assignment 6 Hint 1]].
+     You'll need to define a computation monad type, unit, bind, and lift.
+We encourage you to consider this hint: [[hints/Assignment 6 Hint 1]].
 
 2. Prove that your monad satisfies the monad laws.  First, give
 examples illustrating specific cases in which the monad laws are