======================================================================= 1 ===
Date:    1 Jun 93 18:06:25 GMT
From:    hendrik@vedge.com (Hendrik Boom)
Subject: os/2 port?

Is there an OS/2 2.x port of modula 3?
If not, can anyone suggest how much work it would be?

	hendrik.

-- 
-------------------------------------------------------
Try one or more of the following addresses to reply.
at work:	hendrik@vedge.com,  iros1!vedge!hendrik
at home:	uunet!ozrout!topoi!hendrik


======================================================================= 2 ===
Date:    Thu, 3 Jun 1993 02:13:17 GMT
From:    clfung@cs.ust.hk (Fung Chi Leung)
Subject: Priority thread

Hi,
  
  I would like to know have someone implement the priority thread in M3?
If not, I do like to build such a thing and want to have some expertise 
suggestions.

  In my mind, there are two approaches:

1.	Modify the current scheduler modules in M3.

2.	Build a totally new interface using the light weight process
	in Sun OS.  But, I am worrying about the compatibility of 
	this approache with the current scheduler.

PS.  For the first approach, I need some expertise suggestions on
which modules and data structure should be modified.

Thanks in advance.
--
Leung [Chi-Leung Fung] | email: clfung@cs.ust.hk | phone: (852) 358 7022
Everything takes longer than you expect.


======================================================================= 3 ===
Date:    4 Jun 93 18:42:51 GMT
From:    fn00@gte.com (Farshad Nayeri)
Subject: Sample Modula-3 programs


I am looking for sample Modula-3 "application" programs that do
something non-trivial, but they are not too advanced either. I want to
keep these programs around to give it away to people who are just
learning Modula-3 (who may or may not know too much about programming
with Modula-3). Sam Harbison's Modula-3 book lacks substantial
examples.  SPwM3 doesn't include too many example code that are not
too involved.

Does anyone have simple sample programs that they are willing to
share?

If enough people send programs, I will package them up and put them
for public consumption somewhere.

Thanks in advance, 

--farshad

--
Farshad Nayeri  |  Distributed Object Computing
  fn00@gte.com  |  GTE Laboratories, Inc., Mail Stop 62
 (617)466-2473  |  40 Sylvan Road, Waltham, MA 02254, USA


======================================================================= 4 ===
Date:    7 Jun 93 04:08:16 GMT
From:    tas@cs.uq.oz.au (Tasman Hayes)
Subject: Overriding methods to NIL.

In some code I attempt to override a method to NIL, a la:

	REVEAL T = Public BRANDED OBJECT
	             ...
		   METHODS
		     ...
		   OVERRIDES
                     ...
		     calc_head := NIL;
                     ...
		   END

"calc_head" is defined in Public as a method that takes no parameters, and
returns nothing.


The SRC Modula-3 compiler doesn't like this, informing me:

	"./Stream.mg", line 37: default is not a procedure (calc_head)



I quote from Modula-3's language definition:

	NULL <: PROCEDURE(A): R RAISES S for any A, R, and S
	That is, NIL is a memeber of every procedure type.

					(page 25, SPwM3)

	A method override has the form:
		m := proc
	where m is the name of a method of the supertype ST and proc is a
        top-level procedure constant. It specifies that the m method for T
        is proc, rather than ST.m. 
 ---->  If proc is non-nil, its first parameter ...

					(page 22, SPwM3)


Am I misinterpreting the language definition, or going about overriding to NIL
in the wrong way, or is something else askew.

Any comments would be greatly appreciated,
Tasman


(The reason I want to explicitly assign NIL to the method is to ensure a runtim
e
 error if that method is invoked (i.e. when it shouldn't ever be). )


======================================================================= 5 ===
Date:    Mon, 7 Jun 93 16:55:49 GMT
From:    mjordan@src.dec.com (Mick Jordan)
Subject: Re: Overriding methods to NIL.

In article <1993Jun7.160318.24989@src.dec.com>, kalsow@src.dec.com (Bill Kalsow
) writes:

|> The work-around is to override the method with a procedure that crashes:
|> 
|>     PROCEDURE CrashAndBurn (<*UNUSED*> self: T) =
|>       BEGIN <* ASSERT FALSE *> END CrashAndBurn;
|> 

Since pragmas are only hints to the implementation and can be ignored 
by a compiler, it is better to crash programs with exceptions, vis:

EXCEPTION Crash;

PROCEDURE CrashAndBurn (<*UNUSED*> self: T) =
  <* FATAL Crash *>
  BEGIN RAISE Crash END CrashAndBurn ;



======================================================================= 6 ===
Date:    Mon, 7 Jun 93 16:03:18 GMT
From:    kalsow@src.dec.com (Bill Kalsow)
Subject: Re: Overriding methods to NIL.

In article <13783@uqcspe.cs.uq.oz.au>, tas@cs.uq.oz.au (Tasman Hayes) writes:
> In some code I attempt to override a method to NIL, ...
> 
> The SRC Modula-3 compiler doesn't like this, informing me:
> 
> 	"./Stream.mg", line 37: default is not a procedure (calc_head)

It's a bug.  The compiler doesn't recognize NIL as a legal method
value, but it should.

The work-around is to override the method with a procedure that crashes:

    PROCEDURE CrashAndBurn (<*UNUSED*> self: T) =
      BEGIN <* ASSERT FALSE *> END CrashAndBurn;


  - Bill Kalsow



======================================================================= 7 ===
Date:    Tue, 8 Jun 1993 07:37:22 GMT
From:    johnh@david.wheaton.edu (John C. Hayward)
Subject: Modula-3 port to 386bsd alpha testers wanted

Several people have posted queries about a Modula-3 port for 386bsd.  I have
been working one and it seems to work and is complete except for the IEEE
floating point parts.  

The compiler thrashes badly if you only have 4MB of memory but seems to 
perform as reasonably as one would expect if you have 8MB of memory.
(The driver takes about 3MB of virtual memory as does the compiler itself).
The current port assumes the existance of the math co processor for 386.

There were a number of problems related to 386bsd which made the port more 
difficult - including.
ar - if the length of a file name is longer than 16 and odd the resultant
    library is unusable to ld and ranlib
sh, csh - do not follow the convention for allowing the first line of the shell
    script to specify which shell to invoke.
cc, float.h - core dumps if you try to use HUGE as a floating point constant.
cc, dtoa.h - default rounding of floats to int was round rather than trunc.
	     /* what does your compiler do with i = 1.6;? */
make - makefiles and SEP seem to behave differently in 386bsd and other unix
       platforms

The biggest problem was my own falt in trying to get threads working dealing
with setting up a stack for a new thread.

I have run the ~400 tests included in the distribution and aside from extra 
cc warning messages, different cc warning and error messages, the IEEE 
floating point tests, rounding errors and number of procedures test I 
think all the tests performed as expected.

I am looking for a few brave souls willing to try the port out.
Hardware requirements - 386, 486 with co-processor and 8MB of memory.
Might need 100-150MB of disk space to build and play with the system.
runs on 386bsd0.1 (0.2 won't be out until later this summer and I have not 
     found the patches yet:-{).

The distribution of the compiler (v1.11) I think will take about 4MB.

I am in Malaysia till the end of the summer and from time to time
our connections via internet go down.

Send e-mail to johnh@david.wheaton.edu if interested.

johnh...


======================================================================= 8 ===
Date:    Tue, 8 Jun 1993 20:49:24 GMT
From:    Ken Wellsch <kcwellsc@math.uwaterloo.ca>
Subject: m3 source-level debugging?

Have I incorrectly installed our Modula-3?  We have WRL version 2.11 on
a Sun4 running SunOS 4.1.2 and are using gcc 2.3.3.  Our students want
to use either DBX or GDB (v4.9) but can't do source level things, e.g.
"list".  I seem to have only the derived _m3main.c file mentioned as a
file in the resulting symbol table.  Since neither DBX nor GDB understand
Modula-3 I suspect source level debugging is currently unavailable, yes?


======================================================================= 9 ===
Date:    Wed, 9 Jun 1993 17:00:34 GMT
From:    grlw1@cus.cam.ac.uk (Rich Walker)
Subject: RefTable & GC-related bug - read and laugh...

After a day or two of hammering my head against a GC-dependant bug in my
code, I traced it.

RefTable.Put takes a REFANY key; my code (somewhat liberally) computes a
key from the data and LOOPHOLE's it. (There's a good-ish reason for this).
After forcing GC through all my code, I tracked it to the library routine;
after altering chunks of the code so I could compile a modified version of
a standard library routine, and still include the rest of the library :-<,
I tracked it:

The RTHeap.FreezeRef in RefTable.Put.

My key was, of course, not a _real_ address. So, when it got frozen,
something gave...  Back to a rewrite of the code...

(Why not use a table that takes a hash function on creation? Good point.)

-- 
--- Rich! Walker (grlw1@cus.cam.ac.uk)
"In a way, we're a kind of Peace Corps."
- Maj. A. Lincoln German, Training Director of the
Green Beret Special Warfare School, Ft. Bragg, N.C.


======================================================================= 10 ===
Date:    10 Jun 93 18:08:47 CST
From:    skelley@tisl.ukans.edu ( Sean V. Kelley )
Subject: vgrindefs for Modula-3

Hi,

I'm looking for some vgrindefs for Modula-3 for my vgrind printing.
Could someone either mail me a copy or point me to an ftp site
with vgrindefs for Modula-3?

Thanks,

Sean


--
Sean V. Kelley                                      skelley@tisl.ukans.edu
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
Telecommunications and Information Sciences Laboratory (TISL), ||    K
The University of Kansas, Lawrence, Kansas USA                 ||     U
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
 "Bi/onn driopa/s ar na h-amada/in nuair a bhi/onn drugall ar na h-aingil"










======================================================================= 11 ===
Date:    Fri, 11 Jun 1993 13:17:53 GMT
From:    jredford@shearson.com (John Redford)
Subject: Re: vgrindefs for Modula-3

In article <1993Jun10.180848.50803@kuhub.cc.ukans.edu> skelley@tisl.ukans.edu (
 Sean V. Kelley ) writes:



   I'm looking for some vgrindefs for Modula-3 for my vgrind printing.
   Could someone either mail me a copy or point me to an ftp site
   with vgrindefs for Modula-3?


Here is what I have been using for a good while now...

modula3|mod3|m3:\
        :pb=(^\d?PROCEDURE\d\p\d|\(|;|\:):\
        :cb=\(*:ce=*\):\
        :lb=':le=\e':\
        :ab=<*:ae=*>:\
        :sb=":se=\e":\
        :kw=ABS ADDRESS ADR ADRSIZE AND ANY ARRAY AS BEGIN BITS BITSIZE\
        BOOLEAN BRANDED BY BYTESIZE CARDINAL CASE CEILING CHAR CONST\
        DEC DISPOSE DIV DO ELSE ELSIF END EVAL EXCEPT EXCEPTION EXIT\
        EXPORTS EXTENDED FALSE FINALLY FIRST FLOAT FLOOR FOR FROM IF\
        IMPORT IN INC INTEGER INTERFACE ISTYPE LAST LOCK LONGREAL LOOP\
        LOOPHOLE MAX METHODS MIN MOD MODULE MUTEX NARROW NEW NIL NOT\
        NULL NUMBER OBJECT OF OR ORD OVERRIDE PROCEDURE RAISE RAISES\
        READONLY REAL RECORD REF REFANY REPEAT RETURN REVEAL ROOT ROUND\
        SET SUBARRAY TEXT THEN TO TRUE TRUNC TRY TYPE TYPECASE TYPECODE\
        UNSAFE UNTIL UNTRACED VAL VAR WHILE WITH


This works quite well, but might be sub-optimal. If anyone sees any
problems with it, let me know.

--
John Redford (AKA GArrow) | 3,600 hours of tape.
jredford@lehman.com       | 5 cans of Scotchguard.


======================================================================= 12 ===
Date:    11 Jun 93 20:29:17 GMT
From:    norman@flaubert.bellcore.com (Norman Ramsey)
Subject: M3 BOF at PLDI?

Is anyone organizing a Modula-3 birds-of-a-feather session at the
upcoming SIGPLAN PLDI conference in Albuquerque?

Norman


--
Norman Ramsey
norman@bellcore.com


======================================================================= 13 ===
Date:    Fri, 11 Jun 93 21:47:36 GMT
From:    nichols@parc.xerox.com (David Nichols)
Subject: Re: vgrindefs for Modula-3 

Date: Fri, 11 Jun 1993 14:44:23 PDT
X-Received: from localhost by osprey.parc.xerox.com with SMTP id <6086>; Fri, 1
1 Jun 1993 14:44:24 -0700
X-Received: by src-mail.pa.dec.com; id AA00825; Fri, 11 Jun 93 14:47:30 -0700
X-Received: by inet-gw-1.pa.dec.com; id AA26820; Fri, 11 Jun 93 14:47:27 -0700
X-Received: from osprey.parc.xerox.com ([13.2.116.9]) by alpha.xerox.com with S
MTP id <11816>; Fri, 11 Jun 1993 14:44:36 PDT
X-Received: by src-news.pa.dec.com; id AA09474; Fri, 11 Jun 93 14:47:33 -0700

> I'm looking for some vgrindefs for Modula-3 for my vgrind printing.
> Could someone either mail me a copy or point me to an ftp site
> with vgrindefs for Modula-3?

M3pp, included in the M3 distribution, will also do fancy formatting for
PostScript.  It will change the line breaks from your original source code,
but it will also align declarations in to nice columns using the real
PostScript font widths.

To install m3pp (if you haven't already), you'll need to edit
FBEPostScript.m3 and change AFMDir to point to a directory with the
PostScript font metric files ("AFM files").  These give the widths of all
the characters in the various fonts.  If you have the Transcript product
from Adobe, you already have these files.  Otherwise, you can pick them up
via ftp from ftp.adobe.com:/pub/adobe/AFMFiles/.  This a directory with a
00README file and a bunch of subdirs with the AFM files.

	David


======================================================================= 14 ===
Date:    Fri, 18 Jun 93 21:29:03 GMT
From:    mhb@src.dec.com ("Marc H. Brown")
Subject: Modula-3 textbook on available!

Date: Fri, 18 Jun 93 14:29:00 -0700
X-Received: by ash.pa.dec.com; id AA21666; Fri, 18 Jun 93 14:29:00 -0700
X-Received: by src-news.pa.dec.com; id AA11719; Fri, 18 Jun 93 14:29:01 -0700
X-Mts: smtp


I'm please to announce that I just got back from Stanford Bookstore 
with a copy of Sedgewick's 

        Algorithms in Modula-3

just published by Addison-Wesley.

>From the back of the book: "This latest version of Robert Sedgewick's 
popular book exhibits his comprehensive collection of algorithms 
in a modular, object-oriented programming environment with implementations 
in the Modula-3 language. These algorithms cover a broad range of 
fundamental and more advanced methods: sorting, searching, string-processing, 
geometric, graph, and mathematical algorithms." 

The ISBN number is 0-201-53351-0. Cost is $42.95. 

P.S. Some of the algorithm animations on the DEC SRC Modula-3 release 
on gatekeeper are closely tied to the diagrams for this book. 


======================================================================= 15 ===
Date:    Sun, 20 Jun 93 18:14:45 GMT
From:    frode@ODEGARD.COM (Frode Odegard)
Subject: Modula-3 textbook on available!

Date: Sun, 20 Jun 93 10:06:53 PDT
X-Received: from rand.ODEGARD.COM by ODEGARD.COM (4.1/SMI-4.1)
X-Received: by src-mail.pa.dec.com; id AA17784; Sun, 20 Jun 93 11:14:41 -0700
X-Received: by rand.ODEGARD.COM (4.1/SMI-4.1)
X-Received: by inet-gw-2.pa.dec.com; id AA01437; Sun, 20 Jun 93 11:14:40 -0700
X-Received: from surak.UUCP by cs.sfsu.edu (5.65/A/UX-3.00-930326)
X-Received: by src-news.pa.dec.com; id AA06701; Sun, 20 Jun 93 11:14:42 -0700

Hm.  Wasn't there some announcement that there would be an algorithm
animation CD from SRC closely associated with this book?  Is this
still happening?  I hope so, since I enthustastically told to all my
friends about it.. :-)

			- Frode

--------------------------------------------------------------------
Odegard Labs, Inc.			+1-415-434-4242   (voice)
100 Bush St., Suite 2101		+1-415-434-4243   (fax)
San Francisco, CA 94104-3909, USA	frode@odegard.com (internet)



======================================================================= 16 ===
Date:    21 Jun 1993 10:35:57 GMT
From:    heinze@i41s5.ira.uka.de (Ernst A. Heinz)
Subject: Modula-3* paper available by anonymous ftp

For all interested folks I have made my JSPP'93 paper publicly available by
anonymous ftp. The title of the paper reads as follows:

"Modula-3*: An Efficiently Compilable Extension of Modula-3 for
 Problem-Oriented Explicitly Parallel Programming".
 
To retrieve DVI, PostScript, or compressed Postscript versions of the
paper please connect to i41s10.ira.uka.de by anonymous ftp. There, the
directory pub/m3s contains the corresponding files named jspp93.dvi,
jspp93.ps, and jspp93.ps.Z.
 
-rw-r-----   1 ftp      ftp         41604 Jun 14 14:22 jspp93.dvi
-rw-r-----   1 ftp      ftp        147095 Jun 14 14:22 jspp93.ps
-rw-r-----   1 ftp      ftp         59509 Jun 14 14:22 jspp93.ps.Z
 
Don't forget to use binary mode when retrieving the DVI or compressed
PostScript versions! Please send me a short email containing your full
name and address plus affiliation if you retrieve any of the above.

For your information I include the abstract of my JSPP'93 paper below.
 
--------------------------------------------------------------------------
 
MODULA-3*: AN EFFICIENTLY COMPILABLE EXTENSION OF MODULA-3 FOR
PROBLEM-ORIENTED EXPLICITLY PARALLEL PROGRAMMING

Ernst A. Heinz, University of Karlsruhe, F.R. Germany
 (email: heinze@ira.uka.de)

In this paper we present the programming language Modula-3* and
machine-independent optimization techniques for its compilation. We
consider Modula-3* to be a promising new framework for problem-oriented
explicitly parallel programming that aims at high performance on a variety
of architectures and machines. By proposing a large collection of
effective optimizations we illustrate the feasibility of efficient
Modula-3* compilation. We ensure portability of the compiler by
formulating most optimizations as source-to-source transformations in the
intermediate high-level language Modula-3\pi, an extension of Modula-3*
especially designed for this task.
 
--------------------------------------------------------------------------
 
In case of any questions or problems, please don't hesitate to contact
me directly.
 
Cheers.

=Ernst=

+--------------------------------------------------------+-------------------+
| Ernst A. Heinz              (email: heinze@ira.uka.de) |                   |
| Institut fuer Programmstrukturen und Datenorganisation | Make it as simple |
| Fakultaet fuer Informatik, Universitaet Karlsruhe      | as possible, but  |
| Postfach 6980, W-7500 Karlsruhe 1, F.R. Germany        | not simpler.      |
| (Voice: ++49/(0)721/6084386, FAX: ++49/(0)721/694092)  |                   |
+--------------------------------------------------------+-------------------+


======================================================================= 17 ===
Date:    Mon, 21 Jun 1993 00:11:57 GMT
From:    cjlin@cauchy.math.ntu.edu.tw (N/_aDn)
Subject: information modula3

I have left the field of programming language 
for many years so I don't know any thing about Modula-3. 
Could someone point out me where to find information of 
Modula-3.

Thanks in advance.

Chih-Jen Lin
Dept. of Math.,
National Taiwan Univ.



======================================================================= 18 ===
Date:    21 Jun 93 18:37:55
From:    fraser@eros.europarc.xerox.com (Quentin Stafford-Fraser)
Subject: M3 & Python?


Has anybody embedded Python in an M3 system as a scripting language?
Python should go with M3 much better than, say, Tcl, but I haven't
heard of any M3 interfaces to it.

Quentin Stafford-Fraser



--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Quentin Stafford-Fraser      
Rank Xerox EuroPARC,                These are the Good Old Days 
Cambridge, UK		            Just wait and see.
Tel: +44 223 341539    	     
Fax: +44 223 341510             	        Steve Turner  
Fraser@europarc.xerox.com    	
                             



======================================================================= 19 ===
Date:    21 Jun 1993 23:03:49 +0800
From:    sdarragh@tartarus.uwa.edu.au (Stephen Darragh)
Subject: Free Modula-3 compilers for System V


Hi...

Can anyone tell me if/where there are any free Modula-2 compilers for
System V R4 386 unices?

... Stephen


======================================================================= 20 ===
Date:    Mon, 21 Jun 1993 19:22:39 GMT
From:    dave@yost.com (Dave Yost)
Subject: Mac now ready for M3 - threads now supported

In case anyone was considering a port of M3 to the Mac,
you will be pleased to know that in the last few weeks
Apple officially released the "Thread Manager", so you
hopefully can now implement M3 threads easily on the Mac.

-- 
  Dave Yost
      @    .COM


======================================================================= 21 ===
Date:    Wed, 23 Jun 1993 12:47:20 GMT
From:    os102@cl.cam.ac.uk (Oliver Stephens)
Subject: Re: Mac now ready for M3 - threads now supported

In article <yostC8zKHs.Fxt@netcom.com>, dave@yost.com (Dave Yost) writes:
|> In case anyone was considering a port of M3 to the Mac,
|> you will be pleased to know that in the last few weeks
|> Apple officially released the "Thread Manager", so you
|> hopefully can now implement M3 threads easily on the Mac.
|> 

It's not as hopeful as it sounds.  The implementation is based mainly on
cooperative threads (pre-emptive threads do exist but run at interrupt time
and so cannot do anything that might move memory).

I am using the Thread Manager in my port of M3 to the Mac and am working on
a scheme for creating proper pre-emptive threads.  Of course, I shall keep
this newsgroup informed of my progress.

------------------------------------------------------------------------- 
Olly Stephens                                oliver.stephens@cl.cam.ac.uk
Computer Laboratory
University of Cambridge    Loved you there and then, and now like a sheep
United Kingdom                                             - Van Morrison


======================================================================= 22 ===
Date:    Sat, 26 Jun 93 01:46:45 GMT
From:    frode@ODEGARD.COM (Frode Odegard)
Subject: CALICO

Date: Fri, 25 Jun 93 18:45:35 PDT
X-Received: from rand.ODEGARD.COM by ODEGARD.COM (4.1/SMI-4.1)
X-Received: by src-mail.pa.dec.com; id AA00675; Fri, 25 Jun 93 18:46:41 -0700
X-Received: by inet-gw-2.pa.dec.com; id AA20146; Fri, 25 Jun 93 18:46:39 -0700
X-Received: from surak.UUCP by cs.sfsu.edu (5.65/A/UX-3.00-930326)
X-Received: by src-news.pa.dec.com; id AA06504; Fri, 25 Jun 93 18:46:42 -0700


Has anyone formed an opinion on AT&T's CALICO language yet?  I got
a blurb in the mail the other day.

			- Frode


