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
6 days 21 hours ago
1 week 50 min ago
1 week 56 min ago
23 weeks 1 day ago
27 weeks 3 days ago
29 weeks 8 hours ago
29 weeks 8 hours ago
31 weeks 5 days ago
36 weeks 2 days ago
36 weeks 2 days ago