Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83 (MC830713); site vu44.UUCP Path: utzoo!watmath!clyde!burl!ulysses!allegra!mit-eddie!godot!harvard!seismo!mcvax!vu44!jack From: jack@vu44.UUCP (Jack Jansen) Newsgroups: net.lang.c,net.lang.pascal Subject: Re: PASCAL as a systems programming langugage Message-ID: <571@vu44.UUCP> Date: Sat, 12-Jan-85 17:33:53 EST Article-I.D.: vu44.571 Posted: Sat Jan 12 17:33:53 1985 Date-Received: Mon, 14-Jan-85 03:17:31 EST References: <282@harvard.ARPA> <7211@brl-tgr.ARPA> Distribution: net Organization: The Retarded Programmers Home, VU, Amsterdam Lines: 41 Xref: watmath net.lang.c:3856 net.lang.pascal:186 Ok, let me throw in my $1E-1 worth of opinion. I use both Pascal (mainly on a prime and on a cyber) and C (on unix) a lot, especially for system-programming. Although I haven't written any kernel stuff in pascal, I did write things like an uucp-like package, an editor and stuff like that in it. Well, what I like most about pascal is that it *works*. By this, I mean that if a C program takes an hour to write and a pascal program 2 hours, the pascal program is debugged in 20 minutes, and the C program in 2 days. As an example, I wrote a program to read tar tapes on a prime (in pascal) *yesterday*. This is exactly what I mean. It took me no more than 8 hours to write *AND DEBUG* a ~600 line pascal program. (Ok, there's still ONE bug, it won't extract a file if an intermediate directory name starts with a digit, but I'll fix that mondaymorning between 11:00 and 11:01 hour:-). Now, if anyone ever succeeded in accomplishing something like this in C, I would be very interested. Usually, I find that C programs of that size (say, 200-1000 lines) take about 1 day per 100 lines to write. I have seen this also with friends of mine, so I don't think it can be influenced by a difference in experience or other personal factors, I think that pascal, by *forcing* you to define your data, parameters, etc. correctly points you to a lot of logic errors (and typing errors), where C will have you addicted to coffee and tobacco by the time you locate the missing &. It's a *real* pity, though, that there are no standard ways to do even mildly funny things (opening a named file, static variables or other forms of modularization, *any* kind of string handling, etc etc), and that there are no *fast* pascal compilers for unix (are there? I'd *love* to hear about them!!). -- Jack Jansen, {seismo|philabs|decvax}!mcvax!vu44!jack or ...!vu44!htsa!jack Help! How do I make a cup of tee while working with an acoustic modem?