[M3devel] An awkward interaction of language properties

Rodney M. Bates rodney_bates at lcwb.coop
Wed Feb 22 18:45:50 CET 2012


Yes.

2.4.7: A complete revelation has the form:

REVEAL T = V

where V is a type expression (not just a name) ...

Whether this could be relaxed without introducing semantic problems would take
careful thought, but I have been aware of how using what is popularly misnamed
"name equivalence" for opaque types is needed instead of Modula-3's usual
structural equivalence for other types.

On 02/21/2012 07:44 PM, Antony Hosking wrote:
> Is that really true?  I would have thought that so long as the type name can be resolved to a concrete type then it would work.
>
> On Feb 21, 2012, at 3:59 PM, Rodney M. Bates wrote:
>
>> But a revelation must be a type constructor, not just a type name.
>
>



More information about the M3devel mailing list