Version française
Home     About     Download     Resources     Contact us    
Browse thread
newbie: how to call a function with multiple parameters?
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ 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-----