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

Reply via email to