Browse thread
newbie: how to call a function with multiple parameters?
-
Ben Aurel
- asmadeus77@g...
- micha
- Peng Zang
[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
| Date: | -- (:) |
| From: | Peng Zang <peng.zang@g...> |
| Subject: | Re: [Caml-list] newbie: how to call a function with multiple parameters? |
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
You don't pass arguments like you do in C or Java. In those languages you
might do:
somefunction(arg1, arg2, arg3)
In OCaml, you do:
somefunction arg1 arg2 arg3
In OCaml, "(arg1, arg2, arg3)" means create a 3-tuple. "somefunction(arg1,
arg2, arg3)" is interpreted as make a 3-tuple and call "somefunction" on that
tuple.
You code, therefore, should look like this:
let print_logic a b =
Printf.printf "a and b is %B\n" (a && b);
Printf.printf "a or b is %B\n" (a || b);
Printf.printf "not a is %B\n" (not a)
;;
print_logic true false;;
Peng
On Monday 04 August 2008 02:32:36 pm Ben Aurel wrote:
> hi
> yeah - the question is low, but I-m struggling on different frontiers
>
> /////////////// print_logic.ml ///////////////////////////////
> ````````````````````````````````````````
> 1 let print_logic a b =
> 2 Printf.printf "a and b is %B\n" (a && b);
> 3 Printf.printf "a or b is %B\n" (a || b);
> 4 Printf.printf "not a is %B\n" (not a) (* Q1 *)
> 5
> 6 print_logic(true, false);; (* Q2 *)
>
> ```````````````````````````````````````
>
> Problem: the code doesn't compile and I don't find any help on the web.
>
> Questions:
> (* Q1 *): Somehow I don't get the concept with ";" and ";;". On line
> 4 do I need to end the statement with semicolon double-semicolon or
> nothing?
>
> (* Q2 *): How can I pass those parameters?
>
>
> Maybe there is something that's else wrong.
>
> thanks
> ben
>
> _______________________________________________
> Caml-list mailing list. Subscription management:
> http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
> Archives: http://caml.inria.fr
> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
> Bug reports: http://caml.inria.fr/bin/caml-bugs
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.7 (GNU/Linux)
iD8DBQFImFUBfIRcEFL/JewRAuRvAJ4yXnpbBE6wQzBlg66hClZomYWBPACfUabY
rHz86mdOg5FIaSk/bi5O9aE=
=L61/
-----END PGP SIGNATURE-----