Path: utzoo!attcan!uunet!husc6!bloom-beacon!apple!rutgers!att!alberta!calgary!cpsc!demarco From: demarco@cpsc.ucalgary.ca (Vince Demarco) Newsgroups: comp.sys.apple Subject: Re: Mad Apple Forth Summary: forth Keywords: Did I read the advertisement correctly? Message-ID: <883@cs-spool.calgary.UUCP> Date: 13 Mar 89 00:23:48 GMT References: <1249@tellab5.tellabs.CHI.IL.US> Sender: news@calgary.UUCP Lines: 42 In article <1249@tellab5.tellabs.CHI.IL.US>, toth@tellab5.tellabs.CHI.IL.US (Joseph G. Toth Jr.) writes: > Boy, was I excited... > This thing is not a compiler. It is an interpreter... > Nor could I read the secondary disk. NOT A ProDOS DISK. > > I mean, what is going on here. > whatever that is. > Makes it awfully hard to use with a Hard Disk, doesn't it, > always having to insert the thing in a 5 1/4 inch drive in slot 6 drive 1 > every time you want to use the prrograms, or even if you boot from that drive > when you don't have a hard disk (probably worse). I sure seems inflexible, > but then the forth language doesn't allow for drive or file selections, it > reads data in something called screens (something like a block of data, > kind of like a file (but not really). Sound confusing?? It is to me, and > I've programmed in most languages around (a computer engineer, graduated > from UMR in 1975, and been using computers ever since). Well most "real" forths are "semi-compilers", their base functions are in pure machine language and the system compiles your user functions made purely out of jsr and jmp to those base functions... "real" forths ARE compilers in the sense that they generate romable machine code (albeit rather large), and they are ALSO interpreters in that the code they generate are available as you type (if you do it that way, if you use an editor to write code, then the process is the same as a standard compiler) Forth "screens" are a form of virtual memory... In a version of forth83 I have, unlimited "screens" per file are supported.. screens may contain program code or data.. the words UPDATE and FLUSH and CLOSE (somewhat analagous to unix SYNC) allow you to manipulate the VM and swap to disk... in fact many IBM and other forths are multiuser/multitasking systems!!! (my apple f83 is multitasking (albeit slowly)!!).. I believe "screens" are rather antiquated.. they were used back when one had a whole disk/tape to himself and the whole of the mass storage device could be used for his "screens".. (My f83 supports the use of screens within FILES).. you can think of screens as "pages" used in a more advanced VM system... I guess if you want, I could upload that forth (also PD, ProDOS based) for everyone to look at... Chris.. (posting from a friend's acct) Disclaimer-> I know absolutely nothing about this... :-) Replies-> CYLau@UNCAMULT.BITNET