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 ____________________ Racket Users list: http://lists.racket-lang.org/users