[M3devel] [M3commit] CVS Update: cm3

Randy Coleburn rcoleburn at scires.com
Tue Jul 21 23:53:31 CEST 2009


Jay:
 
I guess this topic is just a pet peeve of mine.
 
We tout Modula-3 as a systems programming language and that it has all these great features that make it superior to languages that lack them, yet when we "don't practice what we preach" and use another language it weakens the argument.  
 
IMO, using C instead of Modula-3 is kind of like saying that we love baseball, but we have to use soccer to play baseball the right way.  It just doesn't add up.
 
I think we should always use Modula-3 in developing and enhancing the CM3 system.  
 
I must also disagree with you and state that for a TRUE Modula-3 fan, C is indeed "nasty."
 
All that said, I haven't looked at the code in question here.  I simply commented on the idea of replacing M3 code with C code.
 
Regards,
Randy

>>> <jay.krell at cornell.edu> 7/21/2009 1:53 PM >>>
I might have left it able to be called safe. Honestly I look more for  
human verifiable safety and correctness and it lacked those before and  
now does not. If that coincides with machine verifable safety, great.  
Either way you need C here for correctness and safety. It isn't  
'nasty'. Not using C here would be nasty. I think you have it  
backwards. UNLESS the sizes and constants here are well known but  
reading docs quickly I didn't see that. Unsafe does not imply not  
portable.

  - Jay (phone)

On Jul 21, 2009, at 9:03 AM, Tony Hosking <hosking at cs.purdue.edu> wrote:

> Hear, hear!
>
>
> Sent from my iPhone
>
> On Jul 21, 2009, at 11:17 AM, "Randy Coleburn"  
> <rcoleburn at scires.com> wrote:
>
>> Granted, I see that Term.m3 is an UNSAFE module, so that by  
>> definition means it is not portable.
>> Why though do we want to replace it by nasty C code where non- 
>> portable stuff can be easily hidden?  This is Modula-3.  Why not  
>> fix the Modula-3 code so that it doesn't have to be UNSAFE?  (My 2  
>> cents.)
>> --Randy
>>
>> >>> Jay Krell <jkrell at elego.de> 7/21/2009 11:55 AM >>>
>> CVSROOT:/usr/cvs
>> Changes by:jkrell at birch.09/07/21 11:55:36
>>
>> Added files:
>> cm3/caltech-parser/term/src/: TermC.c
>>
>> Log message:
>> initial copy of dangerous non portable Term.m3 to rewrite portably  
>> and have it do nothing silently on Win32 which should suffice, or  
>> if not, can probably be done better, specifically the MakeRaw  
>> function
>>
>>
>


CONFIDENTIALITY NOTICE:  This email and any attachments are intended solely for the use of the named recipient(s). This e-mail may contain confidential and/or proprietary information of Scientific Research Corporation.  If you are not a named recipient, you are prohibited from making any use of the information in the email and attachments.  If you believe you have received this email in error, please notify the sender immediately and permanently delete the email, any attachments, and all copies thereof from any drives or storage media and destroy any printouts of the email or attachments.

EXPORT COMPLIANCE NOTICE:  This email and any attachments may contain technical data subject to U.S export restrictions under the International Traffic in Arms Regulations (ITAR) or the Export Administration Regulations (EAR).  Export or transfer of this technical data and/or related information to any foreign person(s) or entity(ies), either within the U.S. or outside of the U.S., may require export authorization by the appropriate U.S. Government agency prior to export or transfer.  In addition, technical data may not be exported or transferred to certain countries or specified designated nationals identified by U.S. embargo controls without prior export authorization.  By accepting this email and any attachments, all recipients confirm that they understand and will comply with all applicable ITAR, EAR and embargo compliance requirements.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20090721/b9f7c2a0/attachment-0002.html>


More information about the M3devel mailing list