Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site rochester.UUCP Path: utzoo!watmath!clyde!cbosgd!gatech!seismo!rochester!ken From: ken@rochester.UUCP (Ipse dixit) Newsgroups: net.lang.mod2 Subject: Info-Modula-2 Digest V1 #1 Message-ID: <13776@rochester.UUCP> Date: Sat, 7-Dec-85 19:54:00 EST Article-I.D.: rocheste.13776 Posted: Sat Dec 7 19:54:00 1985 Date-Received: Sun, 8-Dec-85 07:01:11 EST Reply-To: ken@rochester.UUCP (Ipse dixit) Distribution: net Organization: Sans Serif Lines: 612 References: This digest is being posted here on an experimental basis. If the volume and quality keeps up I shall be posting about once every 10 days. Ken -- Info-Modula-2 Digest Saturday, 7 Dec 1985 Volume 1 : Issue 1 Today's Topics: Implementation queries Administrivia Standards Call for papers ------------------------------------------------------------ Date: Wed 27 Nov 85 14:59:18-EST From: Ralph W. Hyre Jr. Subject: Query: Modula-2 implementations for Apple ][? To: info-modula-2 I am looking for implementations that run under ProDOS, PCPI CP/M 2.2 (for PCPI Applicard or StarCard), Pascal 1.1, and DOS 3.3 in order of preference. Tasking support is essential. A public domain compiler written in Pascal would also be acceptable. I'd also be happy with a Native Code generator that will convert M-code or P-code into 6502 or Z-80 assembly code. At this point I'm looking for anything I can get my hands on... I'm aware of Volition's Modula-2 for Apple Pascal, but expect this will be hard to get since Volition bit the dust. (Chapter 11) I'm also aware of Borland's Modula-2, but it hasn't been released yet. Any help would be appreciated. - Ralph - ------- ------------------------------ Date: 27 November 85 11:56-PST From: BEBO%SLACVM.BITNET@WISCVM.ARPA Subject: M2 on VM/CMS To: INFO-MODULA-2 Date: 27 November 1985, 11:55:32 PST From: Bebo White (415) 854-3300 x2907 BEBO at SLACVM To: INFO-MODULA-2 at ROCHESTER.ARPA Subject: M2 on VM/CMS Does anyone know of any existing or planned versions of M2 for IBM VM/CMS? Thanks ------------------------------ Date: Wed, 27 Nov 85 13:32:29 pst From: Charles Neveu Subject: Coroutines in ITC modula-2 To: info-modula-2 Does anyone have any experience with coroutining in Interface Technologies Corporation's Modula-2 system? I'm trying to implement the Buffer and P Processes modules from Wirth's 'Programming in modula-2', but it keeps crashing the system. I can write simple coroutines (i.e., two procedures which transfer control back and forth), but for some reason the buffers and processes stuff crashes. The main program sets up two procedures, Reader and Writer, and calls StartProcess(Writer,n). StartProcess executes through NewProcess ok, but never gets past the Transfer statement (the first statement in 'Writer' is never executed). Also, it does something different every time. Sometimes alt-ctrl-del will reboot the system; usually, the keyboard is just locked out. Sometimes I get a stack overflow error; usually not. I've run out of ideas. Is this a compiler bug? Is there something I should be doing that I'm not? I'll send the code to anyone who is interested. Thanks in advance, Charles Neveu neveu@lll-crg ------------------------------ Date: 27 Nov 85 21:36:02 EST (Wed) From: The Heliopolist Subject: Various things To: info-modula-2 Administrivia: Thank you for the overwhelming response. It got to the point where my friend was surprised to hear me say "Oh good, no mail!" upon logging on. Messages are archived to MODULA-2-ARCHIV.TXT at SIMTEL20.ARPA. Old mail is saved to MODULA-2.ARCHIV.ymmdd (we don't have any yet so you have to help us generate enough mail to have old mail). SIMTEL20 supports the ANONYMOUS account via ftp using any non-null password. About addresses: if you find a piece of mail bounced back to you due to a bad address in the list, forward it to me. I want to keep the list as clean as possible. Also, if your address is going to change or disappear, I (and others in the list) would be grateful if you could let me know. Introducing myself: I'm a gratudate student at the U of Rochester, CS Dept. My first contact with Modula-2 was back in 1981. At that time we had a compiler running on a PDP-11/34 in Sydney U Computing Centre. This was a direct descendant of the first ETH compiler. Modula-2 has always impressed me as a language with a high power to size ratio. Although Modula-2 was designed primarily for systems programming, many of Pascal's deficiencies have been fixed, and Modula-2 is often used for pedagogical purposes. References: Modula-2 is currently defined by "Programming in Modula-2, 3rd edition", Wirth, Springer Verlag 1985. Note that some revisions have been made to the language since the 2nd edition. Survey: To get this group going, it would be nice to get some answers to that commonly asked question, "What is out there?". Those of you with compilers may like to fill in this questionaire. The questions are not exhaustive, feel free to add any points I may have missed. You can either reply to me and I will summarize, or to the group if you feel the information is of general interest. 1. Name of compiler. 2. Machine and operating system compiler runs on. 3. Type of compiler (compiler/interpreter, native code, cross-compiler, etc). 4. Organization maintaining or marketing compiler. 5. Availability (educational license, commercial license, purchase, etc). 6. Performance (speed of compilation, speed of code compared with other compilers for the same machine and OS). 7. Other accompanying tools (e.g. syntax directed editors, debuggers, etc). 8. Other comments you might want to add. Ken - -- USnail: Dept. of Computer Science, U of Rochester, Rochester 14627. UUCP: ..!{allegra,decvax,seismo}!rochester!ken ARPA: ken@rochester.arpa Phone: (716) 275-2569 (office), (716) 244-7185 (home) Voice: Ken! ------------------------------ Date: Sat, 30 Nov 85 11:45:49 pst From: Tim Gonsalves Subject: Wirth ed3 := ed2 + ? To: info-modula-2 Does there exist a list of changes from editon 2 to edition 3 of Wirth's Modula-2 book? Would some care to list them here? Thanks in advance, Tim Gonsalves tag@Shasta.Arpa, ..Glacier!Shasta!tag ------------------------------ Date: Sat, 30 Nov 85 17:40:00 PST From: sun!orb!nagler@ucbvax.berkeley.edu (Rob Nagler) Subject: Re: M2 on VM/CMS & M2 book To: info-modula-2 There is a VM/CMS M2 compiler offered by (it might even be finished by now) Savvy Computer, Inc. 2 Edgecliff Road Upper Montclair, NJ 07043 There may be others, you should contact Modus for more information. Re: 2nd/3rd Ed. differences. You probably want to check with Modula Assured Quality Software for a list of papers some of which include Wirth's changes (not a verbatim list, but at least the points). MAQS 6521 Raymond Street Oakland, CA 94609 (Ask about BSI & Modus Documents) Re: M2 queries in general I hate to post duplicate messages, but it seems that many of the people on this list do not know about Modus (M2 Users' Group). The organization is fairly active and always welcomes new membership. So here is a repeat of a message that was sent to INFO-PASCAL and net.lang.mod. Note that the word "implementors" doesn't mean that only implementors are allowed, there are many users as well (I didn't write the letter, just sent it). - -------------------------- To all Modula-2 implementors: The Modula-2 Users' Association (MODUS) is 3 month old forum for people who are interested in promoting Modula-2. Many of the members of the Modula-2 Standards Committee are active participants in MODUS. Niklaus Wirth is a charter member. As a MODUS user you will receive a quarterly newsletter. The group is new, so a regular meeting schedule has not been established. The next meeting is being planned for Paris. If you want to find out more about MODUS, send a note to: Modula-2 Users' Association PO Box 51778 Palo Alto, CA 94303 - ---------------------------- Addendum: The last meeting in Menlo Park was very interesting and had about 100 members participating. There was also a survey taken of implementations and the results are available from Modus. I apologize for the repeat, but maybe some of the net traffic will be reduced by P-mail to Modus. Rob ------------------------------ Date: Sat, 30 Nov 85 19:37:53 pst From: calmasd!rjh@SDCSVAX.ARPA (Bob Hofkin) Subject: Re: Query: Modula-2 implementations for Apple ][? To: Ralph.Hyre@c.cs.cmu.edu I understand that somebody else is buying the rights to Volition's Modula-2 compilers. The new distributor will probably set very reasonable prices, too, so try to hang on for about a month. If you have one of the Apple CP/M cards, you can probably get a Z-80 Modula-2; a couple were written up in _Computer Language_ last month. - --bob ------------------------------ Date: 2 Dec 1985 0954-PST (Monday) From: violetta@decwrl.DEC.COM (Violetta Cavalli-Sforza) Subject: Re: Wirth ed3 := ed2 + ? To: Tim Gonsalves I think that all the differences (or at leas a good part of them) are evident in the syntax appendix in Edition 3, where they are marked with a special symbol. I did a quick scan through the text once and basically couldn't find any other differences. ------------------------------ Date: Mon, 2 Dec 85 19:49:02 est From: Edoardo Biagioni Subject: Re: New mailing list for Modula-2 To: rochester!ken I would like to join the Modula-2 mailing list. I would like to actively participate by posing the following question: There have been rumors (mainly in this newsgroup) about an ANSI-Standard version of Modula-2. - Does anybody know any more than rumors? - Who is doing the work? - Is a standard library being defined? - What does the work involve? How does it handle such weak points as export lists, CAP, TRUNC and the like? I'll be glad to expand on the "weak points" issue if sufficient interest develops. Thanks in advance for any answers. Ed Biagioni decvax!mcnc!unc!biagioni seismo!mcnc!unc!biagioni ------------------------------ Date: Tue, 3 Dec 85 10:00:34 pst From: Vincent Broman Subject: biagioni's q on stds To: info-modula-2 hi. dick karpinski distributes info on the british standards institute's work on modula-2. i append part of his comments from the usenet/net.lang.mod2 . - ------------------------------------------ Date: Thu, 17 Oct 85 16:33:01 PDT From: sdcsvax!ucbvax!ucsf-cgl.ARPA!ucsfcca.UCSF!dick (Dick Karpinski) Cc: ucsfcca.UCSF!./m2.bsi@ucsf-cgl.ARPA I am the US distributer [for BSI docs] and have now three editions of the "Problems with the Modula-2 Report" paper.... Those three are $5 each. My rule is to break even on the distribution. For now that means about 10 cents per page. I'll offer some arrangement for getting notice of new docs and for getting all docs as they arrive in my hands. As far as I know, only BSI is working on Modula-2 standards. Wirth hates to work on standards.... Dick Karpinski Manager of Unix Services, UCSF Computer Center UUCP: ...!ucbvax!ucsfcgl!cca.ucsf!dick (415) 666-4529 (12-7) BITNET: dick@ucsfcca Compuserve: 70215,1277 Telemail: RKarpinski USPS: U-76 UCSF, San Francisco, CA 94143 - ------------------------------------------ i think most urgent of all is creation of portable io (& etc) libraries. interesting is an article in the j of pascal, ada, & modula-2, v4 #2 (mar/apr 85) by craig et al. "design of a modula2 standard library". they say that volition systems, logitec, and diser were working on std io but nothing came to fruition. the article presents and motivates preliminary standard definition modules for io, directory access, number formatting, string ops, machine constants, memory allocation, and coroutines. their attempt is better than the hash that wirth presents in his book, but still needs a lot more thought. i'm working on some criticisms, but won't make my own suggestions until i see the docs from the bsi . some problems i see in creating a modula2 io library are: 1. how to make use of strong typing to detect inconsistent use of the io calls at compile time, when we cannot define a base type (file of MYTYPE) associated with our file variables. 2. how to recognize the record-oriented structure of io on some systems (e.g. vms) without handicapping the flexibility of other systems (e.g. unix) with no record structure required or even definable. 3. how to supply calls with and without useful default parameter values, without inundating the user with 1000 alternative procedure-names. here i miss ada's function overloading and parameter defaulting. 4. how to declare and initialize the std input and output streams in an os-independent way. there is a lot to hammer out before we get good std libraries, but doing it will be critical to the widespread acceptance of modula2. Vincent Broman MILNET: broman@nosc Analysis Branch, code 632 UUCP: {ihnp4,decvax,akgua,dcdwest, Naval Ocean Systems Center allegra,ucbvax}!sdcsvax!noscvax!broman San Diego, CA 92152 Phone: (619) 225-2365 ------------------------------ Date: Tue, 3 Dec 85 10:21:43 pst From: Vincent Manis Subject: Modula-2 for the 370 To: info-modula-2 A recent message to stated the [semi-]existence of a Modula-2 compiler for CMS. The company was named as Savvy Computer, Inc., of Upper Montclair, NJ. A call to Directory Assistance in New Jersey indicates no listing for this company. Can either the original message poster or somebody else please give me a phone number where I can contact Savvy? ------------------------------ Date: Tue 3 Dec 85 12:07:11-PST From: Richard Pattis Subject: Rumor of Modula on IBM Mainframes To: info-modula-2 I heard a rumor today that a group at Purdue is working on an IBM mainframe version of a Modula compiler. The rumor came from a publisher, who was unable to supply any technical details. Rich - ------- ------------------------------ Date: Thu, 5 Dec 85 09:18:27 PST From: sun!orb!nagler@ucbvax.berkeley.edu (Rob Nagler) Subject: Re: Standard M2 To: info-modula-2 As far as I know, there is no ANSI standard group (ad hoc or otherwise) which is working on M2. However, the British Standards Institute is sponsoring a Working Group on M2. They have been active for well over a year. The chairperson is Susan Eisenbach from Imperial College and some members are: Roger Needham, Randy Bush, Roger Henry, and Brian Wichman (plus 15-20 others of similar prominence). Libraries. The Ad Hoc Working Group on M2 developed a library (actually it is not really being endorsed by the group as a whole). This group is not affiliated with BSI, but there are members on both. The AHW was formed by industrial folks looking for a standard library instead of the hackery that Wirth has published. The library has been published in Modus News and was a subject of hot debate at the last Modus meeting. Several other people (myself included) have developed alternative proposals (which are of course far superior). The BSI is taking submissions from the general public as well as comments on the existing versions. You can get copies of some of these libraries via MAQS. Weak points. The BSI group is diverse, but is trying to move quickly. They are not spending time on redesigning the language, just clarifying the inconsistencies. Thus, all of your questions and much more are being discussed (in disgusting detail). MAQS offers some papers that were produced by members or discussed by the group. To clarify the standard document, they are also looking at alternative methods of description. There will be three definitions: formal language spec, english spec, and an implementation (not efficient, but correct!). If anyone has read the ISO standard, you will appreciate this effort. They are moving at the speed of normal standards committee's, hence "don't hold your breath". They have some prolific writers, so most of this is documented. Ad Hoc Standards. Hayes Microcomputer Products Inc. sponsored the development of an M2 Validation Suite. My former company did the work and it is now sitting around collecting dust until the lawyers can get their act together on how they can distribute it (personally, someone should point these guys to a tape drive and show them how to mount tapes and let 'em rip, but who am I to say). Obviously when a Validation Suite is developed, one has to make decisions about the bits and come up with a de facto standard. We were tracking Wirth's changes as they came about. We were also in contact with The Professor about issues of clarification and got his opinions (although we didn't always follow them). Overall, I think it is a pretty good representation of a possible standard and thus the BSI is trying to get it from Hayes. As a result, no one else is developing an MVS, because there is already one in existence. However, the one in existence is unavailable. Catch-22, no? Rob ------------------------------ Date: Thu, 5 Dec 85 10:12:45 PST From: sun!orb!nagler@ucbvax.berkeley.edu (Rob Nagler) Subject: Re: biagioni's q on stds To: broman%bugs@nosc.arpa Sorry, I didn't read your letter first, but I had a large queue and I just answer them one at a time. Anyway, a few comments about your problems with the standards. 1. I am not sure static strong typing will help when considering files. First, the only static type checking that is "lost" is during calls to the file module e.g. BinaryIO.ReadBlock( file, myRec, result ); As we see here, myRec is no longer checked and "file" can be of any type. Thus, you are correct in assuming that static checking will help. However, if file and myRec are of different types, it is more than likely that the values assigned to myRec will be incorrect and sooner rather than later will cause and assertion botch (e.g. range error). Clearly, what one would like is a check on all the values assigned to the fields of myRec. Ada does not do this, because it is too inefficient (nor does Pascal for that matter). I am of the opinion that the program must protect itself, if it reads data from the outside world (e.g files, the user, etc) and that no efficient implementation of dynamic checking could ever accomplish the level of protection that most programs require. Thus, the small loss from lack of static checking is just noise in comparison with the huge loss that communication with the outside world causes. 2. I believe that with any standard there must be compromise. My version of a std uses the Ada approach when it comes to blocking, etc. Let the program pass a random string (with "" as the default) which can describe the file's creation/open options. This allows the program to specify anything that the particular implementation allows (similar to the fortrash FILE statement). Obviously, this is not perfect, but it is sufficient and is effiecient in the default case. I have been involved with implementations of M2 libraries on three systems and have looked at others. I believe we can cover the bases sufficiently without sacrificing too much on those systems which do not have complicated record management systems (a la UNIX). Text is another issue. I contend that we have to have a non-data driven model of text IO (all the biggies have it, Ada, Pascal, ...) and I believe that we may have to place restrictions so that the normal case is optimized (which has been done in my lib as well as others). It is very difficult to define reasonable portable semantics for example in the case of read/write text files. Thus, I believe we can't allow that mode of operation. The list goes on. 3. Aha, overloading is the root of all evils. I thought you wanted protection? What happens when I do the following in Ada: Text_IO.Put( someEnum ); when I really meant to do the following: Text_IO.Put( someString ); No protection whatsoever. I don't mind typing (in my M2 lib): SimpleIO.WriteString( someEnum ); and having the compiler can catch my error. 4. I am not sure why you need to initialize the std{in,out,err} in an OS independent way. It should be handled by the module which exports these objects in its initialization body, hence in its implementation dependent code. After doing 5 implementations on 3 systems (I was a consultant, we get paid for doing things over and over again), I didn't find this to be a problem at all. Lastly, I agree wholeheartedly with the statement: there is a lot to hammer out before we get good std libraries, but doing it will be critical to the widespread acceptance of modula2. Rob ------------------------------ Date: Thu, 5 Dec 85 15:49:12 CST From: kalsow@crys.wisc.edu (Bill Kalsow) Subject: A Call for papers To: info-modula-2 I received this note a while ago and thought that any aspiring authors might be interested. - -------------------- >From cook%virginia.csnet@CSNET-RELAY.ARPA Fri Sep 20 23:08:54 1985 Received: from wisc-crys.arpa by cheddar; Fri, 20 Sep 85 23:08:45 cdt Message-Id: <8509210408.AA16808@wisc-crys.arpa> Received: from CSNET-RELAY.ARPA by wisc-crys.arpa; Fri, 20 Sep 85 23:08:39 cdt Received: from virginia by csnet-relay.csnet id ad00293; 21 Sep 85 0:05 EDT Received: by uvacs.UUCP (4.12/5.1.UVA) id AA17998; Fri, 20 Sep 85 09:48:53 edt Date: Fri, 20 Sep 85 09:48:53 edt From: "Robert P. Cook" Posted-Date: Fri, 20 Sep 85 09:48:53 edt To: raphael.wisconsin@csnet-relay.arpa Status: R .po 1.0i .ps 20 .ce CALL FOR PAPERS .ce 5 Special Issue of IEEE Software on Modula-2 .pp The deadline for manuscripts is March 1, 1986. The issue is scheduled for publication in September 1986. Topics of interest include, but are not limited to, the following: .nf .in 10 Extensions to Modula-2 Modula-2 Programming Environments Modula-2 Compilers, Debuggers, Editors Research Projects Built Using Modula-2 Modula-2 Oriented Operating Systems Distributed Computing Using Modula-2 Architectures to Support Modula-2 .in 0 .fi .pp Send completed papers or inquiries to Prof. Robert Cook at the following address: .nf .ps 16 Robert P. Cook Dept. of Computer Science Thornton Hall University of Virginia Charlottesville, VA 22901 USA (804) 924-1022 .fi - -------------------- Bill Kalsow (kalsow@crys.wisc.edu) ------------------------------ End of Info-Modula-2 Digest *************************** -- UUCP: ..!{allegra,decvax,seismo}!rochester!ken ARPA: ken@rochester.arpa USnail: Dept. of Comp. Sci., U. of Rochester, NY 14627. Voice: Ken!