codepad
[
create a new paste
]
login
|
about
Language:
C
C++
D
Haskell
Lua
OCaml
PHP
Perl
Plain Text
Python
Ruby
Scheme
Tcl
-- continuation passing add'cps :: Int -> Int -> (Int -> r) -> r add'cps x y k = k $ x + y square'cps :: Int -> (Int -> r) -> r square'cps x k = k $ x * x pythagoras'cps :: Int -> Int -> (Int -> r) -> r pythagoras'cps x y k = square'cps x $ \x'squared -> square'cps y $ \y'squared -> add'cps x'squared y'squared $ \sum'of'squares -> k sum'of'squares main = pythagoras'cps 2 3 print
Private
[
?
]
Run code
Submit