wmb@MITCH.ENG.SUN.COM (01/03/91)
> I have other dream machines. > A muilti-FORTH engine running a NEXTSTEP workstation, for one. > My reasoning is that with Display Postscript being based on FORTH > a FORTH engine auta do just fine. PostScript in NOT based on Forth. Quoting from the Preface in the _PostScript Language Reference Manual_ (The "Red Book"): Although the Design System language [the precursor to PostScript] and its successors bear a superficial resemblance to the FORTH programming language, their conception and development were entirely independent of FORTH. I believe this. I really really do. I know both Forth and PostScript rather well, and I believe that there are *profound* differences in the guts of the two languages. The similarity starts and ends with "both languages have postfix syntax". The execution models are so different that there is no particular reason to believe that a good Forth engine is necessarily a good PostScript engine. (A particular Forth engine might turn out to be an okay PostScript engine just by virtue of being generally a fast machine, but the stack optimizations of the Forth engines I know of don't match the PostScript stack requirements very well, nor do the optimization for handling threading). In my view, the Magic-L language (essentially STOIC with Pascal-like syntax), even though its syntax is not postfix at all, is much much closer to Forth then PostScript. The order in which you type words to compose a program has only a minor influence on the optimum execution architecture for a language. The type structure of a language is much more important (PostScript has typed objects, Forth has untyped "cells"), and the binding is more important too (PostScript defaults to late binding, Forth to early binding). Mitch Bradley, wmb@Eng.Sun.COM
cwpjr@cbnewse.att.com (clyde.w.jr.phillips) (01/04/91)
In article <9101031535.AA12653@ucbvax.Berkeley.EDU>, wmb@MITCH.ENG.SUN.COM writes: > > I have other dream machines. > > A muilti-FORTH engine running a NEXTSTEP workstation, for one. > > My reasoning is that with Display Postscript being based on FORTH > > a FORTH engine auta do just fine. > > PostScript in NOT based on Forth. Quoting from the Preface in the > _PostScript Language Reference Manual_ (The "Red Book"): > > Although the Design System language [the precursor to PostScript] > and its successors bear a superficial resemblance to the FORTH > programming language, their conception and development were > entirely independent of FORTH. > > I believe this. I really really do. I know both Forth and PostScript > rather well, and I believe that there are *profound* differences in the > guts of the two languages. The similarity starts and ends with "both > languages have postfix syntax". The execution models are so different > that there is no particular reason to believe that a good Forth engine > is necessarily a good PostScript engine. (A particular Forth engine In general I agree with you, however... I happen to know of another Major Application that denied FORTH influence and basis, that ran an environment and execution model very close to postscript and had tagged and typed data, arrays could be manipulated as easily as numbers on the stack, etc, yet their publisher didn't want to acknowledge FORTH and made a simular statement as above. Yet this product was a re-engineered FORTH that provided postscript like functions in FORTH. ...if it quacks like a duck... Whether the statement is truthful or not we may never know, but I do know that fundamental differences don't negate the simularities! In other words a tagged & typed FORTH would still be much more of a FORTH than a "C" or Pascal, wouldn't you agree? > might turn out to be an okay PostScript engine just by virtue of being > generally a fast machine, but the stack optimizations of the Forth > engines I know of don't match the PostScript stack requirements very > well, nor do the optimization for handling threading). Wouldn't a FORTH implementation of Postscript match better? Say ala FIFTH's postscript interpreter? > > In my view, the Magic-L language (essentially STOIC with Pascal-like syntax), > even though its syntax is not postfix at all, is much much closer to Forth > then PostScript. > > The order in which you type words to compose a program has only a minor > influence on the optimum execution architecture for a language. The type > structure of a language is much more important (PostScript has typed > objects, Forth has untyped "cells"), and the binding is more important > too (PostScript defaults to late binding, Forth to early binding). My point is exactly that I found type checking, compile time checking and OOP stuff including Late Binding that I implemented in FORTH to not change the essence of FORTH; it's external interface, leaving me with a FORTH that still seems more like FORTH than anything else, except maybe postscript! 8^) The execution environment does relate to Uchip architecture but an implementation ( of any other application domain language ) written in FORTH is still better run on a FORTH chip. > > Mitch Bradley, wmb@Eng.Sun.COM --Clyde