[comp.lang.postscript] Why you should use NeWS as a tool to learn PostScript

don@brillig.umd.edu (Don Hopkins) (09/21/88)

    Date: 20 Sep 88 14:53:14 GMT
    From: phri!roy@nyu.edu  (Roy Smith)
    Subject: Why you shouldn't use NeWS as a tool to learn PostScript

    [...]
    I still maintain that NeWS is different enough from PostScript to
    make in inadvisable to use the former as a tool for learning the latter.
    -- 
    Roy Smith, System Administrator
    Public Health Research Institute
    {allegra,philabs,cmcl2,rutgers}!phri!roy -or- phri!roy@uunet.uu.net
    "The connector is the network"

My argument, which applies to interpretive languages in general, is
that it's easier to learn a language in an interactive programming
environment than in a batch environment. Direct access and immediate
feedback gives a programmer immersed in an interpretive environment
intimate experience with the language, and incentive to experiment.

The problems that you describe are minor compatibility issues, not
fundamental learnability issues.

PostScript is very different than the languages most people are used
to.  The syntax of PostScript is extremely simple, but if you're ever
going to be able to harness its power, you've got to understand the
semantics. And playing around with an interactive interpreter is a
quick and fun way to find out how it works.

The fact that the PostScript interpreter in NeWS is different than the
PostScript interpreter (whatever brand it is) that runs in your laser
printer doesn't mean that it's harder to learn PostScript in NeWS. Of
course NeWS is different: it has extensions, and it has bugs. But the
fact that NeWS is an interactive programming environment that can give
immediate visual feedback on the screen is a far more important issue
to someone interested in learning a new language.

Metaphorically, I'm saying that it's better to learn Spanish by living
in Spain, than by writing letters to people in Spain. You're saying
that it's inadvisable to learn Spanish by living to Spain, if you want
to write letters to people in Mexico. c(-;

	-Don
	don@brillig.umd.edu
	...!uunet!mimsy!don

jans@tekgvs.GVS.TEK.COM (Jan Steinman) (09/22/88)

<<<don@brillig.umd.edu.UUCP (Don Hopkins)>>>
<<roy@phri.UUCP (Roy Smith)>>
<mh@wlbr.eaton.com.UUCP (Mike Hoegeman)>

<<<If you want to learn PostScript, NeWS is the way to go -- it's an exciting 
and gratifying programming environment!  Don't waste your time trying to learn 
an interactive interpretive language like PostScript by...>>>

<<I can't agree that learning NeWS is the way to learn PostScript.  It's like 
trying to learn yacc at the same time you are learning C>>

<Here's all you have to do...  As Don was trying pointing out IT's INTERACTIVE 
!!  Using a printer to do PostScript development on is downright primitive...>

<<I still maintain that NeWS is different enough from PostScript to make in 
inadvisable to use the former as a tool for learning the latter.>>

Before I launch into this, let me list my qualifications.  I've heard of NeWS.  
My Mac sends PostScript to a printer.  I own (but have not completely read) the 
Red and Blue.  I tried some PostScript hackery once, but quit after several 
hours of getting nothing but illegible error messages out of the printer.  I've 
been using Smalltalk for over four years.

Given such *extensive* knowledge, I side firmly with Don.  When I try to 
imagine how long it would take to learn Smalltalk without its environment, I 
shudder.  The real issue here is how much support an environment provides the 
learner, and sending bits and pieces of code to a printer, walking half a 
block, then waiting for the inevitable banner page filled with meaningless 
error messages, followed by a blank page -- this is not a very productive 
learning environment!  The secondary issue -- separating the environment from 
the language -- is not nearly as important for the initial learning process.  
(How can former Pascal people be productive without knowing that printf() is 
not a part of C?)

Perhaps I've been spoiled by Smalltalk.  Perhaps I need some attitude 
adjustment.  But I think the current state of learning PostScript (as well as 
the current state of software development in general) is summed up by a sign 
someone here has hanging on their wall: "The Flogging Will Continue Until 
Morale Improves."  The dismal state of things is that we all eventually get 
used to the flogging.

:::::: Software Productivity Technologies -- Experiment Manager Project ::::::
:::::: Jan Steinman N7JDB	Box 500, MS 50-383	(w)503/627-5881 ::::::
:::::: jans@tekcrl.TEK.COM	Beaverton, OR 97077	(h)503/657-7703 ::::::

lee@uhccux.uhcc.hawaii.edu (Greg Lee) (09/22/88)

From article <13655@mimsy.UUCP>, by don@brillig.umd.edu (Don Hopkins):
"...
" going to be able to harness its power, you've got to understand the
" semantics. And playing around with an interactive interpreter is a
" quick and fun way to find out how it works.

Maybe not all readers of this discussion know that you can do a
certain amount of playing around without NeWS.  The PS interpreter
inside the Apple LW, at least, has an interactive mode.  You can
can have it calculate and display values on your screen, so long
as the values have string values.  For images, you have to wait
for a page to print, though, so that slows things down.

		Greg, lee@uhccux.uhcc.hawaii.edu

rminnich@super.ORG (Ronald G Minnich) (09/22/88)

In article <13655@mimsy.UUCP> don@brillig.umd.edu.UUCP (Don Hopkins) writes:
>The fact that the PostScript interpreter in NeWS is different than the
>PostScript interpreter (whatever brand it is) that runs in your laser
>printer doesn't mean that it's harder to learn PostScript in NeWS. Of

   Actually, there is one problem with playing with NeWS  that i have found.
You screw up, and you blow your window manager out of the water. 
Then it is almost impossible to determine the state of the world, given
that you have canvasses floating around that have no (seeming) process
attached to them, and you can't change your focus, and ...
   I would much prefer having an X window with a PS interpreter
in it for learning. Then i only have to worry about blowing up that
window, not my whole server. 
   I liked NeWS a lot, but it is too fragile. Sure, it has lightweight
tasks and all that other nice event handling built in. When i started
learning it it really looked like the 'right way to go'; in fact, 
it still does. Sometimes there is a difference between the right 
way to go and the thing that works. I think X11 works. For example, NeWS has
no protection. You can just go trash the interpreter's universe and
then find yourself in a very unhappy state without a paddle. No fun.
I have yet to trash the X server in the ways i trashed the NeWS server.
   It could be that NeWS is just running under the wrong OS. 
A good impedance match of NeWs to OS would be a NeWS on the amiga, 
as much of what NeWS does (event queues, lightweight tasks, etc.)
has an almost eery resemblance to what the amiga Rom Kernel and Intuition
support. And the same problems exist, too, the biggest being no 
protection. Maybe NeWs would be better under Mach ... ?
   I notice that there have been comparisons of NeWS to Unix, in the
sense that NeWS represents a technically superior system much as 
Unix one time represented a technically superior system that might not
have caught on. There is one key difference. By the time Unix really
started to catch on, it was no longer technically superior. In fact
nowadays we are more bound by its limitations than overawed by 
its abilities. If i had to compare NeWS to an OS, i would compare
it to the Apollo Domain system or Multics, which are technically superior but
have also remained vendor-specific and hence something of a niche system.
   I think the analogy that really holds is Unix --> X11, Multics --> NeWS.
And we all know which OS 'won' in the sense of being 'universal'.
We also have a pretty good idea which is better, i think ...
ron

john@trigraph.UUCP (John Chew) (09/22/88)

In article <2407@uhccux.uhcc.hawaii.edu> 
  lee@uhccux.uhcc.hawaii.edu (Greg Lee) writes:
>Maybe not all readers of this discussion know that you can do a
>certain amount of playing around without NeWS.  The PS interpreter
>inside the Apple LW, at least, has an interactive mode.  You can
>can have it calculate and display values on your screen, so long
>as the values have string values.  For images, you have to wait
>for a page to print, though, so that slows things down.
>
>		Greg, lee@uhccux.uhcc.hawaii.edu

If you have a Mac, another good way to learn PostScript is to buy
a copy of LaserTalk, by Emerald City Software (with whom I have no
connection, other than by virtue of being a satisfied customer).

LaserTalk is a PostScript programming environment with basic
debugging features (breakpointing, stepping and tracing through
code, dictionary browsing, continuous display of a user-configurable
set of status variables), a reasonable editor, and an online hierarchical 
copy of the operator summary in the Red Book.  You can also preview
a page image on your screen at varying resolution without running off 
hardcopy.  

I could not do any serious PostScript work without LaserTalk or
something like it.  

Programming PostScript blindly and running off hardcopy to test it
is an obscene idea from the dark ages of batch programming and
punched cards.

Connecting a terminal to a LaserWriter and talking to its interactive
interpreter is still a pretty sick idea.  It's like debugging a
graphics program in C without a debugger or a raster device.

I wish I had an opinion on NeWS, but that'll have to wait until
we get a Sun here....

John Chew

-- 
john j. chew, iii  poslfit@utorgpu.bitnet
    trigraph, inc. poslfit@gpu.utcs.toronto.edu
  toronto, canada  {uunet!mnetor!utzoo,utgpu,utcsri}!trigraph!john
  [it is my opinion that these are solely my opinions.]