rh@cs.paisley.ac.uk (Robert Hamilton) (05/11/87)
HAving just installed BSD 4.3 I was delighted to see that dbx now has support for the DEC Western REsearch Laboratory modula-2 (mod) Question is where do I get mod? does it cost? We've been using the Cambridge m2 compiler since 4.1 . Anybody had experience of both? how does mod compare? -- JANET: rh@uk.ac.paisley.cs EMAIL: rh@cs.paisley.ac.uk | Post: Systems manager. UUCP: ...!seismo!mcvax!ukc!paisley!rh | Department of Computing, Phone: +44 41 887 1241 Ext. 219 | Paisley College | High St. Paisley. | Scotland. | PA1 2BE
heiser@ethz.UUCP (05/14/87)
In article <312@paisley.ac.uk> rh@cs.paisley.ac.uk (Robert Hamilton) writes: >HAving just installed BSD 4.3 I was delighted to see that dbx now has >support for the DEC Western REsearch Laboratory modula-2 (mod) > >Question is where do I get mod? does it cost? >We've been using the Cambridge m2 compiler since 4.1 . >Anybody had experience of both? how does mod compare? I had a look at the DEC compiler when we got it and was disgusted. They shouldn't be allowed to call that Modula-2, it looks more like a dialect of C. Probably the people who wrote it never programmed any Modula-2. Examples: by default, the compiler is NOT case-sensitive, "thus, case variations of reserved words may not be used for identifiers". (This nonsense can be disabled by a compiler option.) Much worse: definition modules are not compiled (and there is no compiler option to fix that). Hence: - no timestamping, no consistency checks when modifying definition modules. Any real Modula-2 programmer estimates that as one of the most powerful language features when developing large systems. - identifiers imported in the definition module are not known in the implementation module, they must be imported again. This will generate a compile-time error in most other Modula-2 systems It took me very little time to decide that the Cambridge system is excellent (especially stuff like m2make etc). It took me much less time to decide to keep off the DEC compiler. Cheers
page@ulowell.UUCP (05/16/87)
rh@cs.paisley.ac.uk (Robert Hamilton) wrote: >We've been using the Cambridge m2 compiler since 4.1 . >Anybody had experience of both? how does mod compare? heiser@ethz.UUCP (Gernot Heiser) wrote: >I had a look at the DEC compiler when we got it and was disgusted. They >shouldn't be allowed to call that Modula-2, it looks more like a dialect of >C. Probably the people who wrote it never programmed any Modula-2. [heat on high] Gimme a break, Gernot. We use both here - Powell's compiler (the DECWRL one) on a VAX (ultrix and 4.3bsd) and the Cambridge compiler on a Sequent (32032). Both have LOUSY error messages. Powell's compiler has a couple of small bugs that you can work around, but it produces very good code, is fast, is quite clean internally, and is well integrated with UNIX. True, the I/O library just calls the C library, but most people around here consider that a FEATURE, based on the brain-damaged I/O that Wirth specifies. We have written a mostly Wirth-compatible Modula library for those people who want to stick to the original text. It was not hard to do. The Cambridge compiler is a joke. The compiler chokes and core dumps on silly little things, it produces HORRIBLE code (and is wrong a lot of times, even on the most fundamental constructs), is NOT nicely written (read: easy to fix) and uses hidden subdirectories (.sym, .lnk, etc) to even work. It also uses non-standard (not Powell, C or Wirth) I/O. It doesn't even support "set of char"!!! The debugger doesn't work at all. The linker goes into infinite loops at times. Maybe the VAX version of the Cambridge compiler is OK, but the NS32032 version sucks rocks. I'd like to have somebody port the Powell compiler to the Sequent rather than deal with the Cambridge compiler. Disclaimer: I do not know mod2 at all, and do not use the compilers, but have to listen to my users constantly bitching about how stupid the packages are. Gernot again: >It took me very little time to decide that the Cambridge system is excellent >(especially stuff like m2make etc). It took me much less time to decide to >keep off the DEC compiler. Neither compiler is acceptable for real work, but I'd rather have a compiler that generates good CORRECT code than one that makes you scratch your head for two days until you realize the compiler reuses a register when it's not supposed to be. [heat on low] Bug reports available upon request. ..Bob -- Bob Page, U of Lowell CS Dept. page@ulowell.{uucp,edu,csnet}