@@ -178,18 +178,40 @@ In the example, Foo is a tagged union type which has two constructors. It's firs
178178
179179Functions in PureScript can have zero or more arguments in general, just like in Javascript.
180180
181−Functions are introduced by using a backslash followed by a comma separated list of argument names:
181+Functions are introduced by using a backslash followed by a list of argument names:
182182
183183```haskell
184−test1 = \a, b, c -> a + b + c
184+test1 = \a b -> a + b
185185```
186186
187−which would correspond to the Javascript `function test1(a, b, c) { return a + b + c; }`
187+which would correspond to the Javascript
188+
189+```javascript
190+function test1(a) {
191+ return function (b) {
192+ return a + b;
193+ }
194+}
195+```
196+
197+Multiple argument functions can be introduced by wrapping the arguments in parentheses, and separating them with commas:
198+
199+```haskell
200+test1 = \(a, b) -> a + b
201+```
202+
203+which generates
204+
205+```javascript
206+function test1(a, b) {
207+ return a + b;
208+}
209+```
188210
189211A function taking no arguments would look like this:
190212
191213```haskell
192−test2 = \ -> 100
214+test2 = \() -> 100
193215```
194216
195217which would correspond to the Javascript `function test2() { return 100; }`
@@ -205,7 +227,7 @@ A special case is made in the case of functions with one argument. These functio
205227
206228```haskell
207229-- has type Number -> Number -> Number -> Number
208−addThree = \a -> \b -> \c -> a + b + c
230+addThree = \a b c -> a + b + c
209231
210232-- has type Number -> Number -> Number
211233addThree 1
@@ -304,7 +326,7 @@ The following types of statement are supported:
304326Here is an example of a power function defined using a block:
305327
306328```haskell
307−pow = \n, p -> do
329+pow = \n p -> do
308330 var m = n
309331 for i <- 0 until p:
310332 m = m * n
@@ -560,7 +582,7 @@ In addition to the standard operators, user-defined infix operators can be creat
560582E.g. to create a synonym for string concatenation:
561583
562584```haskell
563−(<>) = \s1 -> \s2 -> s1 ++ s2
585+(<>) = \s1 s2 -> s1 ++ s2
564586
565587greeting = "Hello" <> "World!"
566588```
@@ -568,7 +590,7 @@ greeting = "Hello" <> "World!"
568590Regular functions can be used as operators by enclosing their names in backticks:
569591
570592```haskell
571−foo = \x -> \y -> x * y + y
593+foo = \x y -> x * y + y
572594
573595test = 10 `foo` 20
574596```