User loginNavigation 
Using Category Theory to Design Implicit Conversions and Generic OperatorsUsing Category Theory to Design Implicit Conversions and Generic Operators, John C. Reynolds, 1980. (Try this if the official link doesn't work.)
This is an old, but still cute, paper. The basic intuition is that a good design principle for a language with implicit conversions is that whatever order of conversions the language takes, you should get the same result. He then formalizes that by giving a category of types and conversions, and demanding that everything commute properly. And these give just the conditions the language designer has to check to make sure that he or she hasn't screwed anything up. Someone could probably get a fun little paper by taking this idea and shooting some dependent types into it. (Maybe somebody already has?) If you've got an abstract type, a coercion function, and a proof that it satisfies Reynolds' conditions, now your compiler can silently insert those coercions for you as needed, but you can still be sure that it won't mess up the meaning of your program. 
Browse archives
Active forum topics

Recent comments
19 weeks 5 days ago
24 weeks 18 hours ago
25 weeks 4 days ago
25 weeks 4 days ago
28 weeks 2 days ago
33 weeks 4 hours ago
33 weeks 5 hours ago
33 weeks 3 days ago
33 weeks 3 days ago
36 weeks 1 day ago