[M3devel] FW: cvsup

Rodney M. Bates rodney.m.bates at cox.net
Tue Apr 14 04:33:48 CEST 2009


Jay wrote:
> I think you can ssh into birch and tar cfz /usr/cvs/cm3 or such.
>  
>  
> If you want/need cvsup, yes please try current cm3 source.
> It at least builds and the changes weren't really significant.
> Yes they had their own copy of TCP.
> Olaf's does too, but his used "override" to avoid the duplicate.
> I just don't use the duplicate.
> It looks like the mainline and cvsup were mostly in sync,
> though mainline has 64bit big endian bug fixes ("one is int not INTEGER").
> I should double check that though.
>  
>  
> I think there is a bit of a language problem in Modula3.
> I can  have:
>  
>  
> INTERFACE A;
> PROCEDURE F;
>  
>  
> INTERFACE B;
> PROCEDURE F;
>  
>  
> and IMPORT both A and B from a third module, since I can refer to A.F and B.F,
>  
> but I cannot IMPORT A from B's implementation or vice versa.
> The implementation of F is ambiguous.
>   
Sure you can.
>  
>  
> A possible solution is to let the implementation put the
> interface name ahead of the function.
>  
> MODULE B IMPORTS A;
>   
In module B, you can refer to A.F.  If you want the F in
B, its name is just unqualified F.  MODULE B is short for
MODULE B EXPORTS B (see 2.5.3, 1st paragraph), and
one consequence of exporting B is that everything declared
in interface B is available without qualification in the module
that does the export .   See 2.5.3, 2nd paragraph.

What you can't do is have the same module export both A and B. 
That would make F an illegal redeclaration.  See 2.5.3, 4th
paragraph.
>  
> PROCEDURE B.F() = BEGIN END B.F;
>  
>  
> and all uses of F within B must say B.F or A.F.
>  
>  
>  - Jay
>
>
> ----------------------------------------
>   
>> Date: Mon, 13 Apr 2009 15:20:06 -0400
>> From: hendrik
>> To: m3devel
>> Subject: Re: [M3devel] FW: cvsup
>>
>>     




More information about the M3devel mailing list