Xref: utzoo comp.lang.forth:568 comp.lang.postscript:971 comp.windows.news:788 comp.windows.misc:699 Path: utzoo!utgpu!water!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!mailrus!purdue!decwrl!adobe!ondine!greid From: greid@ondine.COM (Glenn Reid) Newsgroups: comp.lang.forth,comp.lang.postscript,comp.windows.news,comp.windows.misc Subject: Learning PostScript Keywords: Forth, Lisp, Interactive PostScript, NeWS Message-ID: <4227@adobe.COM> Date: 21 Sep 88 23:34:10 GMT References: <13613@mimsy.UUCP> <3492@phri.UUCP> <23378@wlbr.EATON.COM> <3496@phri.UUCP> <13655@mimsy.UUCP> Sender: news@adobe.COM Reply-To: greid@adobe.UUCP (Glenn Reid) Organization: Adobe Systems Incorporated, Mountain View Lines: 49 > 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. > 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. > -Don I would say that there are several levels of becoming proficient with the PostScripot language, and that (at least at the beginning), it can be very helpful to have some interactive response so you can test things out. However, once you get past a pretty simplistic level, you get very tired of retyping a line of code because you got it wrong: PS> /Times-Roman fondfont 12 scalefont setfont %%[Error: undefined; OffendingCommand: fondfont]%% PS> /Times-Roman findfont 12 scalefont setfont PS> (Hello world!) show %%[Error: nocurrentpoint; OffendingCommand: show]%% PS> 0 0 moveto (:LSJDFLKJSF) show This is about where you put the whole thing into a file, and do this instead: PS> (myprog.ps) run Which gets you back into batch mode, sort of.... The final point that is forgotten is that you can use a printer in interactive mode, which, although it is not as visual (without wasting a bit of paper), at least lets you get a "feel" for the language. I do this all the time to examine some part of my program to see what sequence of operators is necessary to pluck something from an array or whether "putinverval" really works like I think it does. A PostScript printer, after all, is just a computer with a serial port, to which you hook up a terminal (or emulator), just like the old days :-) You still have to type "executive", of course. Cheers, Glenn Reid Adobe Systems