Skip to content

@rauhryan /a_plus_abs_b.hs
Created

Embed URL

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
add :: Integer -> Integer -> Integer
add (a, b) = a + b;
-- Haskell allows me to call the function two ways
-- prefix notation
add (1,2) -- 3
-- infix notation
1 `add` 2 -- 3
function a_plus_abs_b(a, b) {
return (b > 0 ? plus : subtract)(a, b);
// can't return +; #sadpanda
function plus(a, b) { return a + b; };
// can't return -; #sadpanda
function subtract(a, b) { return a - b; };
}
(define (a-plus-abs-b a b)
((if (> b 0) + -) a b))
(define (a-plus-abs-b a b)
((if (> b 0) + -) a b))
(a-plus-abs-b 4 -5) ; returns 9
(+ 4 -5) ; returns -1
(- 4 -5) ; returns 9
(=
(a-plus-abs-b 4 -5)
(+ 4 -5)) ; False
(=
(a-plus-abs-b 4 -5)
(- 4 -5)) ; True
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.