<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>
Date   : Wed, 18 Jul 1984 02:53:47-PDT (Wed)
From   : decvax!decwrl!amd!fortune!foros1!jr@Ucb-Vax.arpa
Subject: Re: C Compiler for CP/M-80?

Hi.  I've been using C/80 (version 3.1, under CP/M) for a while, so
I guess I'll toss out a few comments.

Language:
	more or less full K&R, with some documented restrictions:
	no typedefs, no longs or floats (unless you get MATHPAK),
	no bit fields, no parameterized macros, no #line, no declarations
	within nested blocks.

	Big complaint number one: no parameterized macros.  This
	turns out to be more useful than I thought it would be.

	It also has an undocumented restriction: structures can't
	contain pointers to structures which haven't been declared
	yet.

Library:
	Incomplete.  It doesn't even have <stdio.h>!!!!!!  If you want
	to use "stdin", you have to declare it yourself.  No open() or
	close(), read() and write() can only do multiples of 128 bytes,
	no lseek() unless you buy MATHPAK (not sure if you get it then,
	but it would be easy to write).

	Big complaint number two: because of the order which
	subroutine arguments are pushed onto the stack (leftmost
	first), routines which get passed multiple parameters
	are implemented with a "kluge" (their word) which involves
	#defines to call TWO routines, one of which saves information
	about the top of the stack, for the other.  This affects
	every routine which calls printf, for instance.

Quality of compiler and code produced:
	No complaints.  I haven't run anything big enough to get
	a feel for how fast or how large the generated code is.

Overall impression:
	Still a bargain for $50.  What this compiler really needs
	are (1) a full preprocessor (which there are a couple of
	public domain implementations in the works), and (2) and
	complete runtime library (which is also in the works,
	although it looks like it won't be public domain).

I hope this helps.  If you have any questions or whatever, just drop
me a line.

				See ya!
-- 
				JR (John Rogers)
				...ihnp4!fortune!foros1!jr
				also fortune!jr and proper!jr
<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>