[
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: | 2003-11-05 (10:03) |
From: | Issac Trotts <ijtrotts@u...> |
Subject: | Re: [Caml-list] function overloading |
On Wed, Nov 05, 2003 at 12:57:18AM -0800, Dustin Sallings wrote: > > I swear I found an example demonstrating how to do pattern matching > based on the type of an argument, but every pattern matching example I > can find now seems to be focused on value and not type. > > I'm trying to do something like this: > > let print_poly x = match x with > | (x: bool) -> print_bool x > | (x: int) -> print_int x > ;; > > Can someone tell me what I'm doing wrong (or perhaps tell me why I > shouldn't be doing this at all)? You can do this: type bool_or_int = Bool of bool | Int of int;; let print_bool b = print_string (if b then "true" else "false");; let print_poly x = match x with Bool b -> print_bool b | Int i -> print_int i;; let x = Bool true;; print_poly x;; -- Issac Trotts ------------------- 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