3 ms·
I suggest the ' operator as in let sum (x:'T) (y:'T) = x + y I have no idea why you even have to specify that a method is generic shouldn't it be generic
by fleitz 16y ago
I suggest the ' operator as in
let sum (x:'T) (y:'T) = x + y
I have no idea why you even have to specify that a method is generic shouldn't it be generic by inference?
- beagle3 16y agoIf quotes are used for grouping characters (as they are in C, Java, C#, Python etc.) then this is just as bad as using <>. How can you tell if it is a character literal or a type?
- fleitz 16y agoI have no idea but F# does exactly that. I'm guessing that it uses a context sensitive grammar that doesn't allow you to use string literals for variable names.
- kiiski 16y agoMaybe, but the problem was that "all lexing/parsing/syntax highlighting/analysis of the language is much harder because of this horrible choice". Using quotes doesn't really fix that.
- munificent 16y agoThe problem is that you often need to decorate a generic parameter with additional information (like its type constraints or variance). If the type parameter doesn't have a singular place where it's "declared", there's no convenience place to do that. In your example, how would you specify that T must implement Summable?