User loginNavigation |
archivesImplicit conversion (subtyping) vs Explicit conversionIn the design discussions for Zen, (see: http://lambda-the-ultimate.org/node/5376) we have hit an important decision point, and I wanted to get opinions from the PL community about what they think is the best approach. The choice is between: - Implicit conversions with explicit invariance By way of an example, given a type like this - Could this cause problems where the fact that all types in the collection must be the same is a property relied upon by an algorithm. Then there is the question of boilerplate. With implicit conversion we need an annotation to say 'do not implicitly convert', in contrast by forcing explicit conversion we need an annotation (function call) to do the conversion. - Which option results in the most boilerplate depends on how often the situations occur. Do people find they are wanting to convert types (subsumption/subtyping etc) more often than they are wanting types to remain fixed. I would greatly appreciate views from the community on their experiences of designing languages with these features, or using languages with either approach. |
Browse archivesActive forum topics |
Recent comments
1 week 5 days ago
42 weeks 11 hours ago
42 weeks 15 hours ago
42 weeks 15 hours ago
1 year 12 weeks ago
1 year 16 weeks ago
1 year 17 weeks ago
1 year 17 weeks ago
1 year 20 weeks ago
1 year 25 weeks ago