Article View: comp.lang.modula2
Article #4200Re: "FOR loop" control var. and limit expression types
From: Micheal Cranford
Date: Thu, 14 Apr 1988 02:28
Date: Thu, 14 Apr 1988 02:28
61 lines
3284 bytes
3284 bytes
Harvard, you resently stated :
"I am interested in people's opinions on the restrictions of compatibility
between a FOR loop control variable and the types of limit expressions."
............................[deleted]..................................
"The issue arose during my work to port the 1-pass MC68K native code ETH
compiler."
............................[deleted]..................................
"I intend to change it to allow a free mix of CARDINAL and INTEGER control
variable and limit expressions, but I wanted to get others opinions and
interpretations first."
............................[deleted]..................................
I have nothing useful to offer here except the painfully obvious `it seems
the parser is even more confused than Wirth's definition of compatibility.'.
Your proposed solution sounds just fine to me (follows Wirth's `INTEGER :=
CARDINAL assignment rules).
So why am I bothering you? I am interested in the "1-pass MC68K native code
ETH compiler". I am currently using an optimizing MC68K native code Modula2
compiler that has a number of problems.
1. A number of irritating `bugs'.
2. No compiler support available due to (3).
3. Original authors had a fight and went separate ways.
4. Incredibly slow to optimize (over 1/2 hour on a 1K line program).
5. No compiler source available (they are still fighting over `ownership').
6. Some of the optimization is apparently for another microprocessor (i.e.
instead of using BSET (BCLR) it uses `ROR, OR#1 (AND#FE), ROL' with sets!).
7. Etc......
Some Modula2 compilers that I currently have source to are :
1. 4 pass for ETH Lilith (generates `M' code - currently unused)
2. 4 pass for VMS VAX (derived from ETH multipass - currently unused)
3. 5 pass for MC68000 (derived from ETH 5 pass PDP11 - currently unused)
4. 1 (or 2?) pass for MC68000 (locally generated, little documentation,
author departed over 2 years ago, has been used - currently unused).
I just received #4 (above) and have started checking to see how involved it
will be to make it operational (I don't know about optimizations, etc). My
best choice may be to look elsewhere for a compiler (with source available).
Some standard questions for you :
1. Is the "1-pass MC68K native code ETH compiler" `public domain'?
2. IF `yes' then can you send me a copy, otherwise, how much $?
3. What optimizations does it perform? Reliability? Bugs?
Standard answers (check one or more) :
[] 1. No.
[] 2. Yes.
[] 3. Maybe.
[] 4. Go away.
[] 5. Don't bother me.
[] 6. Other ... please specify in reply
Micheal Cranford
Technical Details
Message-ID:
<8804140228.AA15714@tekgvs.GVS.TEK.COM>Path:
arc1-ca.pugleaf.net!utzoo!mnetor!uunet!ncc!alberta!att-ih!ihnp4!ucbvax!tekgvs.GVS.TEK.COM!mikecReferences:
<INFO-M2%88040714385483@UCF1VM>Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!mnetor!uunet!ncc!alberta!att-ih!ihnp4!ucbvax!tekgvs.GVS.TEK.COM!mikec From: mikec@tekgvs.GVS.TEK.COM (Micheal Cranford) Newsgroups: comp.lang.modula2 Subject: Re: "FOR loop" control var. and limit expression types Message-ID: <8804140228.AA15714@tekgvs.GVS.TEK.COM> Date: 14 Apr 88 02:28:23 GMT References: <INFO-M2%88040714385483@UCF1VM> Sender: daemon@ucbvax.BERKELEY.EDU Reply-To: Info-Modula2 Distribution List <INFO-M2%UCF1VM.bitnet@jade.berkeley.edu> Organization: Tektronix, Inc., Beaverton, OR. Lines: 61