N Best Programming Techniques
From Compsci.ca Wiki
(Difference between revisions)
(→Common Lisp (destructuring-bind)) |
m (→O'Caml) |
||
| Line 42: | Line 42: | ||
==Haskell== | ==Haskell== | ||
==O'Caml== | ==O'Caml== | ||
| + | <pre># let rec fact n = | ||
| + | match n with | ||
| + | 1 -> 1 | ||
| + | | o -> o * fact (o-1);;</pre> | ||
| + | |||
==SML/NJ== | ==SML/NJ== | ||
=Templates/Generics= | =Templates/Generics= | ||
Revision as of 04:35, 9 July 2006
Ten best programming techniques you're (probably) not using.
Contents |
Pattern matching
Common Lisp (destructuring-bind)
[1]> (defun foo (a-list)
(destructuring-bind (a &rest b) a-list
(list a b)))
FOO
[2]> (foo '(1 2 3 4))
(1 (2 3 4))
[3]>
Erlang
-module(example).
-export(hello/1]).
hello("wtd") ->
io:format("Hello, ~s!~n", [Name]);
hello(Name) ->
io:format("Get out!!~n", []).
Haskell
O'Caml
# let rec fact n =
match n with
1 -> 1
| o -> o * fact (o-1);;