tweak week1 advanced
authorJim <jim.pryor@nyu.edu>
Sun, 1 Feb 2015 18:20:15 +0000 (13:20 -0500)
committerJim <jim.pryor@nyu.edu>
Sun, 1 Feb 2015 18:20:15 +0000 (13:20 -0500)
topics/week1_advanced_notes.mdwn

index 203a22f..1f58f61 100644 (file)
@@ -99,7 +99,7 @@ If we get to the `y & ys` line in the pattern list, and the pattern-match succee
 
 ### As-patterns ###
 
 
 ### As-patterns ###
 
-Sometimes it's useful to bind variables against overlapping parts of a structure. For instance, suppose I'm writing a pattern that is to be matched against multivalues like `([10, 20], 'true)`. And suppose I want to end up with `ys` bound to `[10, 20]`, `x` bound to `10`, and `xs` bound to `[20]`. Using the techniques introduced so far, I have two options. First, I could bind `ys` against `[10, 20]`, and then initiate a second pattern-match to break that up into `10` and [20]`. Like this:
+Sometimes it's useful to bind variables against overlapping parts of a structure. For instance, suppose I'm writing a pattern that is to be matched against multivalues like `([10, 20], 'true)`. And suppose I want to end up with `ys` bound to `[10, 20]`, `x` bound to `10`, and `xs` bound to `[20]`. Using the techniques introduced so far, I have two options. First, I could bind `ys` against `[10, 20]`, and then initiate a second pattern-match to break that up into `10` and `[20]`. Like this:
 
     case [10, 20] of
       [ys, _] then case ys of
 
     case [10, 20] of
       [ys, _] then case ys of