Version française
Home     About     Download     Resources     Contact us    
Browse thread
Re: [Caml-list] naming parts of optional arguments?
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Matt Gushee <mgushee@h...>
Subject: Re: [Caml-list] naming parts of optional arguments?
On 27 Mar 2003 at 17:05, Chris Hecker wrote:
 
> Is there a way to name the components of an optional argument?

Are you sure that's what you need to do? Your examples don't show you 
using the x and y values separately.

> # let f ((x,y) as xy) = xy;;
> val f : 'a * 'b -> 'a * 'b = <fun>
> # let f ?xy () = xy;;
> val f : ?xy:'a -> unit -> 'a option = <fun>
> # let f ?((x,y) as xy) () = xy;;
> Characters 8-9:
>    let f ?((x,y) as xy) () = xy;;

At any rate, this works for me:

  # let f ?(xy = 0.0, 0.0) () = xy;;
  val f : ?xy:float * float -> unit -> float * float = <fun>

Now you know xy is a pair of floats, and it's simple to extract the 
separate values if you need to. Or do you need something else that 
I've missed?

-- 
Matt Gushee
Englewood, CO USA

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners