[net.lang.mod2] Wanted: Pascal/Modula-2 help

tower@inmet.UUCP (07/27/84)

#N:inmet:16700001:000:877
inmet!tower    Jul 25 16:45:00 1984

I am doing a study comparing Pascal and Modula-2.

The following would be helpful:

- Comments and experiences on Pascal and Modula-2.
	Particularly dis-advantages and advantages of each, and any
	comparsions between the two languages

- Information on available implementations of Modula-2 on
	micro's and mini's. Supplier's name, addresses, phone numbers.
	Comments on an implementation, including ease of use, speed,
	quality of code, bugs, et. al.

- Information on available conversion tools from Pascal to Modula-2.

- Bibliographies on Pascal and /or Modula-2. Particularly those
	in the format needed by the Unix "refer" nroff pre-processor.

People wishing a summary should send me mail. If there is sufficent
interest, I will post it.

Thanx!

-len tower		UUCP:     {ihnp4,harpo}!inmet!tower
 Intermetrics, Inc.	INTERNET: ima!inmet!tower@CCA-UNIX.ARPA
 Cambridge, MA

patcl@tekecs.UUCP (Pat Clancy) (08/11/84)

>> This makes it sound as if Modula-2 has made no progress over Pascal in
>> string manipulation.  Nothing could be further from the truth.

Actually, a lot of things could be further. "Open" arrays
(eg.: of CHAR) are only allowed as formal parameters --
for a given string to really change size dynamically,
one must either declare a string type which is large enough
to hold any expected string value, or one must copy the string
into a new area each time it changes. This is not much better
than Pascal. Think about implementing a "concatenate" operation,
for example; the only way to get around using a fixed maximum-size
string type is to use NEW/ALLOCATE and pointers, in which
case these "dynamic" strings will be incompatible with literal strings
(which are ARRAY OF CHAR), so the whole thing is very ugly.
True dynamic array types would be one solution.
	
As for standard procedures: the actual language report
(second part of the book) does not define any standard
procedures on strings.

Pat Clancy
Tektronix
{ucbvax,decvax,ihnp4,allegra,uw-beaver,hplabs}!tektronix!tekecs!patcl