Browse thread
parameterized pattern
[
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: | Don Syme <Don.Syme@m...> |
| Subject: | RE: [Caml-list] parameterized pattern |
[ FWIW let's take discussions about F# off-list, e.g. to hubFS? ] > As a mostly Java programmer now, I have to say I'm a bit > envious. C# generics look a lot better to me than the Java 5 ones. Well, this comparison point certainly helped to persuade Microsoft management to do the feature. :-) > What I didn't notice while looking at the F# docs was a > way to declare a generic function/value, where by "generic" > here I mean in the GCaml/CLOS sense, not the Java/Ada sense. > Is something like that in F#, or planned? Yes and no, though the topic often comes up. Currently, operators are overloaded through a statically-resolved version of Ada-style trait constraints, which works well enough in practice. Haskell-style type classes or the proposed default parameters for Scala are other possible design points. These are a little less compelling when you can't redesign the whole .NET library design to take advantage of the feature, but still potentially worthwhile. Best wishes, Don -----Original Message----- From: caml-list-bounces@yquem.inria.fr [mailto:caml-list-bounces@yquem.inria.fr] On Behalf Of brogoff Sent: 15 November 2006 01:01 To: caml-list@yquem.inria.fr Subject: RE: [Caml-list] parameterized pattern On Tue, 14 Nov 2006, Don Syme wrote: > > I just did a quick scan of some F# docs and > > I saw nothing. What did you have in mind? > > .NET type parameters are extensional, i.e. "you can always find out what > 'a is at runtime". In particular in C# you can just write "typeof(T)", > and in F# "(type 'a)", in each case getting a System.Type value. > Supporting exact runtime types was a design decision we made in the > early design stages for .NET generics. As a mostly Java programmer now, I have to say I'm a bit envious. C# generics look a lot better to me than the Java 5 ones. What I didn't notice while looking at the F# docs was a way to declare a generic function/value, where by "generic" here I mean in the GCaml/CLOS sense, not the Java/Ada sense. Is something like that in F#, or planned? -- Brian _______________________________________________ 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