From: arzt@dccs.upenn.edu (Noam H. Arzt)
Newsgroups: comp.sys.next.programmer
Subject: Re: pascal for the next (GNU pascal)?
Date: 9 Apr 92 12:54:39 GMT
Article-I.D.: netnews.73390

In article <1992Apr7.182224.2018@martinhost.hanse.de>  
mimbeck@martinhost.hanse.de writes:
> Has someone a source for a pascal for my NeXT? I read something about a GNU  
> Pascal but I do not know where to get it (mailserver, ftp). Anybody is able 
> to help me?
> 
> Bye
> 	Martin
> 
> --
> Martin Imbeck              privat:    mimbeck@martinhost.hanse.de
> Hamburg, Germany           
> Tel. 040-874436            NeXTfriends Germany e.V.

The University of Virginia has ported a Pascal compiler to the NeXT (as well as  
a lot of other platforms). The cost is minimal ($150 US to site license for  
entire campus). Here is their fact sheet:


			UVAPC/NeXT Fact Sheet


WHAT

uvapc/NeXT is an ISO standard Pascal compiler developed by the
University of Virginia's Academic Computing Center and the Department
of Computer Science.  uvapc/NeXT passes the ISO standard Pascal validation
suite.  The compiler is written in C and has been ported to 
several other Unix platforms.  uvapc/NeXT can generate the necessary
information so that the GNU source-level symbolic debugger, gdb, can be
used (see Caveats below). It also supports obtaining gprof type profiles.


SYSTEM REQUIREMENTS

				Processor
Motorola 68020, 68030, or 68040 and corresponding floating-point coprocessor.

				Operating System
NeXTOS 2.0.  We believe it should run under NeXTOS 1.0, but it has not
been fully tested under that OS (the original development was done under
NeXTOS 1.0).

				Software
Requires or uses the following components:
 	/bin/ld - loader.
	/bin/as - assembler.
	/lib/crt1.o - C startup routine
	/lib/gcrt0.o - profiled C startup routine.
	/lib/libsys_s.a - standard C library.
	/lib/libsys_p.a - profiled C library.
	/usr/lib/libg.a - debugger library.
	/usr/lib/libm.a - math library.
	/usr/lib/libm_p.a - profiled math library.


DOCUMENTATION
A man page as well as a 50 page document describing the internals of uvapc
are included in the distribution.


DISTRIBUTION MEDIA
One 3-1/2 inch 1.44 MB floppy, or one 5-1/4 inch 1.2 MB floppy, cpio format.


PURCHASE AND LICENSING INFORMATION
A source site license agreement must be signed.  To obtain the license form,
please contact Professor Jack Davidson at the address below.  For educational
institutions, a source site license costs $150.00.  Commercial source site
licenses are $3000.00. Payment must accompany the executed site license,
and it must be in the form of a check made  payable to the 
University of  Virginia.  Purchase orders and other forms of payment
are not acceptable.


BENCHMARK INFORMATION
The following benchmark information was gathered on an N1000 cube with
8 MB of RAM, a 330 MB hard disk, and a Motorola 68882 floating-point
coprocessor. The C programs were compiled with the command
`cc -o program program.c'', while the Pascal programs were 
compiled with the command ``uvapc -t -o program program.p''.
The -t option turns off the Pascal run-time checking.  All times are
reported in seconds and are the average of three compiles or run


			    cc		   uvapc
	Program		compile	run	compile	run
	ackerman	1.7	0.6	1.7	2.2
	arraymerge	2.3	6.8	2.3	6.1
	bubblesort	2.1	11.7	2.2	10.5
	puzzle		4.7	3.1	4.0	4.3
	quicksort	3.5	0.2	3.0	0.4
	shellsort	2.2	0.6	2.2	0.7
	sieve		2.5	1.3	3.1	1.7
	matmult		2.2	5.4	1.7	0.7



LANGUAGE CONFORMANCE
The following table shows the behavior of the compiler with respect to the
British Standards Institute Pascal Validation Suite. Failure of the two
tests in the conformance sub-suite is normal behavior. uvapc/next is not
as robust on error handling as some of the other retargets we have done.
This is due to problems in the interrupt handling of the Mach operating
system.

		Statistical Summary of the Validation


Class				Results(Pass/Fail)	Total
Conformance			226/2			228
Deviance			283/0			283
Pretests			87/0			87
Error Handling			48/39			87
Implementation Defined		14/0			14
Implementation Dependent	0/14			14
Implementation Defined Behavior	53/0			14
Extension			4/0			4


CAVEATS
Debugging has not been thoroughly tested. Furthermore, we had
difficulty determining the stab information that had to be output
(anybody got the documentation?). The stabs that are generated work
correctly for dbx, but gdb has some limitations. Known limitations are
1) gdb will not handle variant records, 2) gdb will not handle conformant
arrays, and 3) gdb does not understand file types. gdb will complain about
the stabs if a program that contain these constructs is debugged.


CONTACT INFORMATION
U.S. Mail
	Professor Jack W. Davidson
	Department of Computer Science
	Thornton Hall
	University of Virginia
	Charlottesville, VA 22903

E-mail
	uvapc@virginia.edu


FAX
	804-982-2214

--
Mr. Noam Arzt                            215/898-3029 (voice)
Director, Special Projects               215/898-9348 (FAX)
University of Pennsylvania               arzt@dccs.upenn.edu
Data Communications & Computing Services (NeXTmail is OK)
Suite 221A, 3401 Walnut Street, Philadelphia, PA 19104