[racket] fingertree / nested datatype

From: Matthias Felleisen (matthias at ccs.neu.edu)
Date: Sat Apr 13 11:58:35 EDT 2013

Eiffel is unsound, and we strive to be sound (wrong but commonly used: type safe) so we would need to be careful. 


On Apr 13, 2013, at 11:54 AM, Hendrik Boom wrote:

> On Sat, Apr 13, 2013 at 09:00:22AM -0400, Sam Tobin-Hochstadt wrote:
>> The restriction is supposed to be that a type constructor T a = ...
>> can't have some field in the ... that's a use of T other than to apply
>> it to a.
>> 
>> Unfortunately, this restriction (and all the other literature on this)
>> is presented for ML-like languages, which have neither structs like
>> TR, nor union types, nor subtyping.  That's why we haven't been able
>> to easily transfer the literature on how to add non-regular data
>> types, and why I seem to have implemented an insufficiently-strong
>> restriction.
>> 
>> So I think we need to think harder about this, but I don't have a
>> great suggestion for fixing it at the moment.
> 
> I believe Eiffel doesn't have this restriction.  But my memory is 
> vague, and I have no idea how they handled it.
> 
> -- hendrik
> ____________________
>  Racket Users list:
>  http://lists.racket-lang.org/users



Posted on the users mailing list.