Todd wrote a very interesting paper about statically checking in a way that’s sort of orthogonal to the type system. It didn’t get accepted for publication, however, mostly because of its dependence on novel features of Avail. He or I can send you a copy if you want, although it might contain some spoilers :-).
> On Jan 3, 2015, at 12:25 PM, Robbert van Dalen <[email protected]> > wrote: > > thank you for taking your time discussing this. > >> Having read the indicated section at the link you provided (and the rest of >> the page), it appears that Avail’s object types are a close fit for >> implementing extensible records > > indeed, after reading your elaborate exposition of the avail object type > system, it appears that they are a close fit. > however, there is one snag: object fields have no natural ordering, whilst > tuple fields obviously do (i could be wrong). > > while the notion of equality in avail is very well designed and first class, > i believe that ordering (less than, greater than) is less developed. > for instance, i would like to be able to order tuples (if they contain > elements that can also be ordered). next to that, there are no primitive > ordered sets or maps. > > one challenge i’d like to take on is whether it is possible to implement a > generic avail library that can order almost everything out-of-the-box, > without any boilerplate. > note that in scala, (boilerplate free) generic ordering can be achieved via > implicits; in haskell, via type classes. > > probably, you or todd can implement such library in a day or so. > but please don’t. let me have a stab at it - in order for me to learn more > about avail. > > cheers, > > - robbert
signature.asc
Description: Message signed with OpenPGP using GPGMail
