Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.forth > #35605 > unrolled thread
| Started by | Paul Rubin <no.email@nospam.invalid> |
|---|---|
| First post | 2015-01-08 11:08 -0800 |
| Last post | 2015-01-13 19:47 -0800 |
| Articles | 20 on this page of 64 — 23 participants |
Back to article view | Back to comp.lang.forth
blocks and screens, tell your war stories Paul Rubin <no.email@nospam.invalid> - 2015-01-08 11:08 -0800
Re: blocks and screens, tell your war stories "Elizabeth D. Rather" <erather@forth.com> - 2015-01-08 12:35 -1000
Re: blocks and screens, tell your war stories empty-buffers <empty.buffersYOU-DONT-WANT-THIS@gmail.NEITHER-THIS.com> - 2015-01-08 23:24 +0000
Re: blocks and screens, tell your war stories Paul Rubin <no.email@nospam.invalid> - 2015-01-08 15:36 -0800
Re: blocks and screens, tell your war stories "Elizabeth D. Rather" <erather@forth.com> - 2015-01-08 16:42 -1000
Re: blocks and screens, tell your war stories Paul Rubin <no.email@nospam.invalid> - 2015-01-08 22:55 -0800
Re: blocks and screens, tell your war stories "Elizabeth D. Rather" <erather@forth.com> - 2015-01-08 21:12 -1000
Re: blocks and screens, tell your war stories Paul Rubin <no.email@nospam.invalid> - 2015-01-08 23:27 -0800
Re: blocks and screens, tell your war stories "Elizabeth D. Rather" <erather@forth.com> - 2015-01-08 21:41 -1000
Re: blocks and screens, tell your war stories Mark Wills <markwills1970@gmail.com> - 2015-01-09 02:21 -0800
Re: blocks and screens, tell your war stories "Elizabeth D. Rather" <erather@forth.com> - 2015-01-09 09:21 -1000
Re: blocks and screens, tell your war stories Paul Rubin <no.email@nospam.invalid> - 2015-01-09 13:07 -0800
Re: blocks and screens, tell your war stories "Elizabeth D. Rather" <erather@forth.com> - 2015-01-09 11:46 -1000
Re: blocks and screens, tell your war stories empty-buffers <empty.buffersYOU-DONT-WANT-THIS@gmail.NEITHER-THIS.com> - 2015-01-11 13:58 +0000
Re: blocks and screens, tell your war stories "Alex McDonald" <blog@rivadpm.com> - 2015-01-13 14:37 +0000
Re: blocks and screens, tell your war stories "Elizabeth D. Rather" <erather@forth.com> - 2015-01-08 18:30 -1000
Re: blocks and screens, tell your war stories Paul Rubin <no.email@nospam.invalid> - 2015-01-08 20:47 -0800
Re: blocks and screens, tell your war stories "Elizabeth D. Rather" <erather@forth.com> - 2015-01-08 20:49 -1000
Re: blocks and screens, tell your war stories hughaguilar96@gmail.com - 2015-01-09 13:02 -0800
Re: blocks and screens, tell your war stories a.daniel.eliason@gmail.com - 2015-01-08 14:45 -0800
Re: blocks and screens, tell your war stories Paul Rubin <no.email@nospam.invalid> - 2015-01-08 15:50 -0800
Re: blocks and screens, tell your war stories Doug Hoffman <glidedog@gmail.com> - 2015-01-08 22:34 -0500
Re: blocks and screens, tell your war stories "Elizabeth D. Rather" <erather@forth.com> - 2015-01-08 17:48 -1000
Re: blocks and screens, tell your war stories Paul Rubin <no.email@nospam.invalid> - 2015-01-08 21:13 -0800
Re: blocks and screens, tell your war stories "Elizabeth D. Rather" <erather@forth.com> - 2015-01-08 21:09 -1000
Re: blocks and screens, tell your war stories Roelf Toxopeus <rt4all@notthis.hetnet.nl> - 2015-01-09 09:34 +0100
Re: blocks and screens, tell your war stories Roelf Toxopeus <rt4all@notthis.hetnet.nl> - 2015-01-09 12:26 +0100
Re: blocks and screens, tell your war stories Stan Barr <plan.b@bluesomatic.org> - 2015-01-09 08:10 +0000
Re: blocks and screens, tell your war stories JennyB <jennybrien@googlemail.com> - 2015-01-09 03:36 -0800
Re: blocks and screens, tell your war stories Paul E Bennett <Paul_E.Bennett@topmail.co.uk> - 2015-01-09 14:14 +0000
Re: blocks and screens, tell your war stories albert@spenarnc.xs4all.nl (Albert van der Horst) - 2015-01-09 15:25 +0000
Re: blocks and screens, tell your war stories Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2015-01-09 20:20 +0000
Re: blocks and screens, tell your war stories albert@spenarnc.xs4all.nl (Albert van der Horst) - 2015-01-09 20:47 +0000
Re: blocks and screens, tell your war stories hughaguilar96@gmail.com - 2015-01-09 13:08 -0800
Re: blocks and screens, tell your war stories Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2015-01-09 21:34 +0000
Re: blocks and screens, tell your war stories hughaguilar96@gmail.com - 2015-01-10 14:00 -0800
Re: blocks and screens, tell your war stories hughaguilar96@gmail.com - 2015-01-11 11:45 -0800
Re: blocks and screens, tell your war stories Paul Rubin <no.email@nospam.invalid> - 2015-01-09 13:28 -0800
Re: blocks and screens, tell your war stories Paul E Bennett <Paul_E.Bennett@topmail.co.uk> - 2015-01-10 22:41 +0000
Re: blocks and screens, tell your war stories hughaguilar96@gmail.com - 2015-01-10 18:49 -0800
Re: blocks and screens, tell your war stories Paul E Bennett <Paul_E.Bennett@topmail.co.uk> - 2015-01-11 09:27 +0000
Re: blocks and screens, tell your war stories stephen@mpeforth.com (Stephen Pelc) - 2015-01-11 11:51 +0000
Re: blocks and screens, tell your war stories Steve Graham <jsgrahamus@yahoo.com> - 2015-01-12 14:46 -0800
Re: blocks and screens, tell your war stories Paul E Bennett <Paul_E.Bennett@topmail.co.uk> - 2015-01-13 00:30 +0000
Re: blocks and screens, tell your war stories Wolf Wejgaard <wejgaard@gmail.com> - 2015-01-12 06:32 -0800
Re: blocks and screens, tell your war stories rickman <gnuarm@gmail.com> - 2015-01-12 20:35 -0500
Re: blocks and screens, tell your war stories Mark Wills <markwills1970@gmail.com> - 2015-01-13 03:06 -0800
Re: blocks and screens, tell your war stories lynx <rinkasu@kaze.void.null> - 2015-01-25 18:25 +0000
Re: blocks and screens, tell your war stories Paul Rubin <no.email@nospam.invalid> - 2015-01-15 23:08 -0800
Re: blocks and screens, tell your war stories m.a.m.hendrix@tue.nl - 2015-01-16 03:09 -0800
Re: blocks and screens, tell your war stories albert@spenarnc.xs4all.nl (Albert van der Horst) - 2015-01-16 18:25 +0000
Re: blocks and screens, tell your war stories lynx <rinkasu@kaze.void.null> - 2015-01-25 21:05 +0000
Re: blocks and screens, tell your war stories Bernd Paysan <bernd.paysan@gmx.de> - 2015-01-26 01:08 +0100
Re: blocks and screens, tell your war stories lynx <rinkasu@kaze.void.null> - 2015-01-26 00:56 +0000
Re: blocks and screens, tell your war stories lynx <rinkasu@kaze.void.null> - 2015-01-26 02:12 +0000
Re: blocks and screens, tell your war stories albert@spenarnc.xs4all.nl (Albert van der Horst) - 2015-01-26 18:09 +0000
Re: blocks and screens, tell your war stories lynx <rinkasu@kaze.void.null> - 2015-01-27 07:42 +0000
Re: blocks and screens, tell your war stories Mark Wills <markwills1970@gmail.com> - 2015-01-27 01:25 -0800
Re: blocks and screens, tell your war stories Gerry Jackson <gerry@jackson9000.fsnet.co.uk> - 2015-01-29 10:20 +0000
Re: blocks and screens, tell your war stories anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2015-01-26 12:10 +0000
Re: blocks and screens, tell your war stories Bernd Paysan <bernd.paysan@gmx.de> - 2015-01-26 22:18 +0100
Re: blocks and screens, tell your war stories Doug Hoffman <glidedog@gmail.com> - 2015-01-27 08:44 -0500
Re: blocks and screens, tell your war stories "HAA" <someone@microsoft.com> - 2015-01-14 10:23 +1100
Re: blocks and screens, tell your war stories hughaguilar96@gmail.com - 2015-01-13 19:47 -0800
Page 2 of 4 — ← Prev page 1 [2] 3 4 Next page →
| From | Paul Rubin <no.email@nospam.invalid> |
|---|---|
| Date | 2015-01-08 15:50 -0800 |
| Message-ID | <87wq4wu91a.fsf@jester.gateway.sonic.net> |
| In reply to | #35611 |
a.daniel.eliason@gmail.com writes: > I suggest this book: http://thinking-forth.sourceforge.net/ > As a matter of fact I recommend this book for anyone programming Yes it's a great book, I read it a while back and was just looking at it again. I'll re-read the parts about blocks and screens, but am more interested in stories about the programming experience of that era, as told from today's perspective, and the book doesn't really supply that.
[toc] | [prev] | [next] | [standalone]
| From | Doug Hoffman <glidedog@gmail.com> |
|---|---|
| Date | 2015-01-08 22:34 -0500 |
| Message-ID | <54af4c47$0$291$14726298@news.sunsite.dk> |
| In reply to | #35605 |
On 1/8/15 2:08 PM, Paul Rubin wrote: > I wonder if those of you who developed Forth programs in the era of > blocks and screens could say what it was like, compared to today's Forth > environments. Don Colburn on blocks files (and some other things): ftp://ftp.taygeta.com/pub/forth/Archive/talk/sacred.txt -Doug
[toc] | [prev] | [next] | [standalone]
| From | "Elizabeth D. Rather" <erather@forth.com> |
|---|---|
| Date | 2015-01-08 17:48 -1000 |
| Message-ID | <mcGdnQ0VCpwB0jLJnZ2dnUU7-IWdnZ2d@supernews.com> |
| In reply to | #35626 |
On 1/8/15 5:34 PM, Doug Hoffman wrote: > On 1/8/15 2:08 PM, Paul Rubin wrote: >> I wonder if those of you who developed Forth programs in the era of >> blocks and screens could say what it was like, compared to today's Forth >> environments. > > Don Colburn on blocks files (and some other things): > > ftp://ftp.taygeta.com/pub/forth/Archive/talk/sacred.txt Excellent contribution, Doug. Thanks! Cheers, Elizabeth -- ================================================== Elizabeth D. Rather (US & Canada) 800-55-FORTH FORTH Inc. +1 310.999.6784 5959 West Century Blvd. Suite 700 Los Angeles, CA 90045 http://www.forth.com "Forth-based products and Services for real-time applications since 1973." ==================================================
[toc] | [prev] | [next] | [standalone]
| From | Paul Rubin <no.email@nospam.invalid> |
|---|---|
| Date | 2015-01-08 21:13 -0800 |
| Message-ID | <87bnm8tu2u.fsf@jester.gateway.sonic.net> |
| In reply to | #35626 |
Doug Hoffman <glidedog@gmail.com> writes: > ftp://ftp.taygeta.com/pub/forth/Archive/talk/sacred.txt Thanks, that's interesting. I guess besides the blocks/screens thing, I'm also wondering what it was like developing on those fairly limited systems. Today, we mostly use fancy coding environments on big computers, sometimes tethered to microcomputer targets. There's lots of resident Forths for microcomputers but I get the impression they are basically treated as toys. So I'm wondering what kinds of development techniques were used on the minicomputer Forths of yore, without window systems or process separation or much error checking in the Forth interpreter.
[toc] | [prev] | [next] | [standalone]
| From | "Elizabeth D. Rather" <erather@forth.com> |
|---|---|
| Date | 2015-01-08 21:09 -1000 |
| Message-ID | <ZaCdnaZV9oEn4zLJnZ2dnUU7-e2dnZ2d@supernews.com> |
| In reply to | #35633 |
On 1/8/15 7:13 PM, Paul Rubin wrote: > Doug Hoffman <glidedog@gmail.com> writes: >> ftp://ftp.taygeta.com/pub/forth/Archive/talk/sacred.txt > > Thanks, that's interesting. > > I guess besides the blocks/screens thing, I'm also wondering what it was > like developing on those fairly limited systems. Today, we mostly use > fancy coding environments on big computers, sometimes tethered to > microcomputer targets. There's lots of resident Forths for > microcomputers but I get the impression they are basically treated as > toys. So I'm wondering what kinds of development techniques were used > on the minicomputer Forths of yore, without window systems or process > separation or much error checking in the Forth interpreter. > The fact is, most of the "fancy coding environments on big computers" are just unneeded complexity that makes marketing depts happy. We managed extremely complex applications (of which the most complex that I'm aware of was the Saudi Airport project) using straightforward, simple disciplines and good management. In case you're not familiar with it, the Saudi Airport project, in the late 1980's, involved control over ~32,000 discrete data points (analog in/out, digital in/out) with a network of 512 independent custom-built x86 processors scattered over 100 sq miles and networked to a hub of duplicate, redundant pairs of PDP-11's. There were a large number of subsystems: security, runway lights, fuel depots, water wells, electric power, etc., and graphic terminals managing it all. The contractual requirement was that a command from any node in the network had to be processed within 3 seconds. When we were brought in to the project, a previous team using Fortran, PLM, and Assembler had spent 100 man-years on the project (~30 programmers 3 years) and had failed to deliver commands in under 10 seconds. I assembled a team of 15 programmers and we met that requirement in 6 mos. After 18 mos. we had the graphics, database, and applications running and passed acceptance tests. Last I heard (a couple of years ago) most of it was still running reliably. All of the source organization and programming techniques I just described were used on this project. It is true that we (FORTH, Inc.) rely on cross-compilers for embedded systems nowadays. This is because we can build more powerful optimizing code compilers in the hosts nowadays, without having to worry about consuming valuable RAM and other facilities in the targets. We have made these cross-compilers able to generate the interactive "feel" of programming directly on the targets, and generate better code. Although our source is now in files, most other aspects of our programming style remains the same, because it has been proven to work. Cheers, Elizabeth -- ================================================== Elizabeth D. Rather (US & Canada) 800-55-FORTH FORTH Inc. +1 310.999.6784 5959 West Century Blvd. Suite 700 Los Angeles, CA 90045 http://www.forth.com "Forth-based products and Services for real-time applications since 1973." ==================================================
[toc] | [prev] | [next] | [standalone]
| From | Roelf Toxopeus <rt4all@notthis.hetnet.nl> |
|---|---|
| Date | 2015-01-09 09:34 +0100 |
| Message-ID | <54af9295$0$21107$703f8584@textnews.kpn.nl> |
| In reply to | #35626 |
On 09/01/15 04:34, Doug Hoffman wrote: > On 1/8/15 2:08 PM, Paul Rubin wrote: >> I wonder if those of you who developed Forth programs in the era of >> blocks and screens could say what it was like, compared to today's Forth >> environments. > > Don Colburn on blocks files (and some other things): > > ftp://ftp.taygeta.com/pub/forth/Archive/talk/sacred.txt > > -Doug Thanks Doug, Was a 'Poor man's Mac' user then, and really can't say there was any difference in mouse usage between Mac and Atari, apart from that we had two buttons. What _was_ different though, you could run the Atari without a GUI, like an OSX Mac in Darwin only. This was preferred by the "power users' who disliked GUI stuff and all, including mice. I was surely not one of them ;-) And Sibley editor it is, it's worth quite some trouble. Thanks to Ward McFarlane and some messing about from my side, I can start using MFonVFX's Sibley editor as the front end for SwiftForth OSX. Hello again. -r
[toc] | [prev] | [next] | [standalone]
| From | Roelf Toxopeus <rt4all@notthis.hetnet.nl> |
|---|---|
| Date | 2015-01-09 12:26 +0100 |
| Message-ID | <54afbb01$0$21129$703f8584@textnews.kpn.nl> |
| In reply to | #35644 |
On 09/01/15 09:34, Roelf Toxopeus wrote: > Ward McFarlane Ward McFarland of course (my brain is on the loose)!
[toc] | [prev] | [next] | [standalone]
| From | Stan Barr <plan.b@bluesomatic.org> |
|---|---|
| Date | 2015-01-09 08:10 +0000 |
| Message-ID | <slrnmav36t.8li.plan.b@ID-309335.user.uni-berlin.de> |
| In reply to | #35605 |
On Thu, 08 Jan 2015 11:08:21 -0800, Paul Rubin <no.email@nospam.invalid> wrote: > I wonder if those of you who developed Forth programs in the era of > blocks and screens could say what it was like, compared to today's Forth > environments. Just a quick comment: Back around early 1980's I was using Forth-79 on a TRS-80 (which conveniently had a screen of 16 lines of 64 chars!) and I developed a ForthOS which allowed named sequences of blocks and a directory structure. These blocks were not necessary contiguous, the OS put them in any handy empty space and BLOCK etc were modified to handle the necessary logical to physical block number translation, so block 17 in file MYFILE might be block 124 on the actual disk. A sort of half-way house to file orientated Forth. -- Stan Barr plan.b@bluesomatic.org
[toc] | [prev] | [next] | [standalone]
| From | JennyB <jennybrien@googlemail.com> |
|---|---|
| Date | 2015-01-09 03:36 -0800 |
| Message-ID | <5874a6f5-d832-431a-846a-7b274efb7b06@googlegroups.com> |
| In reply to | #35643 |
On Friday, 9 January 2015 08:10:07 UTC, Stan Barr wrote: > On Thu, 08 Jan 2015 11:08:21 -0800, Paul Rubin <no.email@nospam.invalid> wrote: > > I wonder if those of you who developed Forth programs in the era of > > blocks and screens could say what it was like, compared to today's Forth > > environments. > > Just a quick comment: > Back around early 1980's I was using Forth-79 on a TRS-80 (which > conveniently had a screen of 16 lines of 64 chars!) and I developed a > ForthOS which allowed named sequences of blocks and a directory > structure. These blocks were not necessary contiguous, the OS put > them in any handy empty space and BLOCK etc were modified to handle > the necessary logical to physical block number translation, so block 17 > in file MYFILE might be block 124 on the actual disk. A sort of > half-way house to file orientated Forth. > F83, and other Forths of that time, used block files on CP/M or DOS. I wrote a utility that read a normal text file and split it into 1k chunks (as many paragraphs as could fit in 30 lines - the most that would display on on my PCW screen without scrolling - padded with spaces) and a word-wrapping editor to view and modify the result. That was a /lot/ faster than Lococscript, and with a bit of ingenious screen indexing, made a great reference tool.
[toc] | [prev] | [next] | [standalone]
| From | Paul E Bennett <Paul_E.Bennett@topmail.co.uk> |
|---|---|
| Date | 2015-01-09 14:14 +0000 |
| Message-ID | <cha61sFq5jiU1@mid.individual.net> |
| In reply to | #35605 |
Paul Rubin wrote: > I wonder if those of you who developed Forth programs in the era of > blocks and screens could say what it was like, compared to today's Forth > environments. > > What Forth system did you use? What code editor? What hardware? > > Did you use the scheme of having a comment screen for each code screen? > > What kind of planning process did you use, before you started coding? > E.g. did you write a (maybe informal) code glossary ahead of time? > > Did you feel constrained by the 64 char lines, especially if you used > stack comments? Were stack comments expected then the way they are now? > > How did you debug? Was it common for the whole machine to lock up if > your program had a bug that clobbered memory? What did you do when that > happened? > > How did development time for a Forth program compare to writing > something similar in BASIC, for the problems BASIC could handle? I know > that Forth could do a lot of things that were essentially impossible in > BASIC, but I'm not asking about those. Pheww!!!! you guys were busy yesterday! I only came to Forth in 1982. Previous to that, while I had dealt with languages like BASIC (various types), MUMPS and Fortran IV, I did most of my serious controller programming in machine code or, if I was lucky, Assembler. The Switches and Lamps entry method was very well known to me and I guess it was not too dissimilar to playing a piano. I was became interested in Forth when someone gave me a copy of "Starting Forth". I had a BBC B Micro at the time (6502 based) and soon found a copy of the BBC Forth and Joe Brown Forth. I enjoyed the playtime with it at the time. I added an ATARI MegaST 4 to my computer inventory which gave me a 3.5" floppy and soon after also added the 30Mb hard disk drive. I obtained MPE's GemForth-ST for the machine and got more into Forth. Needing a more portable arrangement I picked up a Zenith PC with two 3.5" floppies. I soon found that the two disk formats were able to be kept similar enough that I could transfer between machines. All the Forth's I used in that era had screen editors built in. The MPE Forth's had blocks in files, which helped storage management a little as I could create individual block-files for each project (some of them became nothing more than LOAD's from the selected blocks from my library of code. I never used the shadow screen approach, preferring instead to include enough comments within the source code itself (that way the comments never got parted from the code). It is still the form I use today now I have gone to entirely files. This style became central to my approach in High Integrity Control Systems and my methods for software certification. I had already done "correct by construction" machine code so Forth for me became probably the best macro assembler ever. -- ******************************************************************** Paul E. Bennett IEng MIET.....<email://Paul_E.Bennett@topmail.co.uk> Forth based HIDECS Consultancy.............<http://www.hidecs.co.uk> Mob: +44 (0)7811-639972 Tel: +44 (0)1235-510979 Going Forth Safely ..... EBA. www.electric-boat-association.org.uk.. ********************************************************************
[toc] | [prev] | [next] | [standalone]
| From | albert@spenarnc.xs4all.nl (Albert van der Horst) |
|---|---|
| Date | 2015-01-09 15:25 +0000 |
| Message-ID | <54aff2e2$0$15840$e4fe514c@dreader35.news.xs4all.nl> |
| In reply to | #35651 |
In article <cha61sFq5jiU1@mid.individual.net>, Paul E Bennett <Paul_E.Bennett@topmail.co.uk> wrote: <SNIP> >I never used the shadow screen approach, preferring instead to include >enough comments within the source code itself (that way the comments never >got parted from the code). It is still the form I use today now I have gone >to entirely files. This style became central to my approach in High >Integrity Control Systems and my methods for software certification. I had >already done "correct by construction" machine code so Forth for me became >probably the best macro assembler ever. I now use content addressable screens, made possible by the speed of modern machines. That makes shadow screens infeasable. If I want VALUE , I ask the system to load the screen with "VALUE" in the index line. (It is a bit more sophisticated than that, but I leave that for now.) WANT VALUE OK LOCATE VALUE SCR # 83 0 ( VALUE TO FROM ) \ AvdH B2aug07 1 2 3 VARIABLE TO-MESSAGE \ 0 : FROM , 1 : TO , 2 : +TO . 4 CREATE _value_jumps '@ , '! , '+! , 5 : FROM 0 TO-MESSAGE ! ; 6 \ ISO 7 : TO 1 TO-MESSAGE ! ; 8 \ ISO 9 : +TO 2 TO-MESSAGE ! ; 10 11 \ ISO 12 : VALUE CREATE , DOES> _value_jumps TO-MESSAGE @ CELLS + 13 @ EXECUTE FROM ; 14 Note that ISO means, "look in the standard for what the word does". No need to replicate that here. Here a fortiori, a mandatory shadow block would be a waste of space, as well as an unnecessary complication. > >-- >Paulng MIET.....<email://Paul_E E. Bennett IE.Bennett@topmail.co.uk> Groetjes Albert -- Albert van der Horst, UTRECHT,THE NETHERLANDS Economic growth -- being exponential -- ultimately falters. albert@spe&ar&c.xs4all.nl &=n http://home.hccnet.nl/a.w.m.van.der.horst
[toc] | [prev] | [next] | [standalone]
| From | Gerry Jackson <gerry@jackson9000.fsnet.co.uk> |
|---|---|
| Date | 2015-01-09 20:20 +0000 |
| Message-ID | <m8pd4j$56c$1@dont-email.me> |
| In reply to | #35653 |
On 09/01/2015 15:25, Albert van der Horst wrote: > SCR # 83 > 0 ( VALUE TO FROM ) \ AvdH B2aug07 > 1 > 2 > 3 VARIABLE TO-MESSAGE \ 0 : FROM , 1 : TO , 2 : +TO . > 4 CREATE _value_jumps '@ , '! , '+! , > 5 : FROM 0 TO-MESSAGE ! ; > 6 \ ISO > 7 : TO 1 TO-MESSAGE ! ; > 8 \ ISO > 9 : +TO 2 TO-MESSAGE ! ; > 10 > 11 \ ISO > 12 : VALUE CREATE , DOES> _value_jumps TO-MESSAGE @ CELLS + > 13 @ EXECUTE FROM ; > 14 > > Note that ISO means, "look in the standard for what the word does". I suggest you try looking for +TO in the standard -- Gerry
[toc] | [prev] | [next] | [standalone]
| From | albert@spenarnc.xs4all.nl (Albert van der Horst) |
|---|---|
| Date | 2015-01-09 20:47 +0000 |
| Message-ID | <54b03e73$0$15939$e4fe514c@dreader35.news.xs4all.nl> |
| In reply to | #35665 |
In article <m8pd4j$56c$1@dont-email.me>, Gerry Jackson <gerry@jackson9000.fsnet.co.uk> wrote: >On 09/01/2015 15:25, Albert van der Horst wrote: >> SCR # 83 >> 0 ( VALUE TO FROM ) \ AvdH B2aug07 >> 1 >> 2 >> 3 VARIABLE TO-MESSAGE \ 0 : FROM , 1 : TO , 2 : +TO . >> 4 CREATE _value_jumps '@ , '! , '+! , >> 5 : FROM 0 TO-MESSAGE ! ; >> 6 \ ISO >> 7 : TO 1 TO-MESSAGE ! ; >> 8 \ ISO >> 9 : +TO 2 TO-MESSAGE ! ; >> 10 >> 11 \ ISO >> 12 : VALUE CREATE , DOES> _value_jumps TO-MESSAGE @ CELLS + >> 13 @ EXECUTE FROM ; >> 14 >> >> Note that ISO means, "look in the standard for what the word does". > >I suggest you try looking for +TO in the standard Nice catch. This is the actual content of screen 83 0 ( VALUE TO FROM ) \ AvdH B2aug07 1 2 3 VARIABLE TO-MESSAGE \ 0 : FROM , 1 : TO . 4 CREATE _value_jumps '@ , '! , '+! , 5 : FROM 0 TO-MESSAGE ! ; 6 \ ISO 7 : TO 1 TO-MESSAGE ! ; 8 \ Signal that we want to add to value 9 : +TO 2 TO-MESSAGE ! ; 10 11 \ ISO 12 : VALUE CREATE , DOES> _value_jumps TO-MESSAGE @ CELLS + 13 @ EXECUTE FROM ; 14 15 I thought I had a bug, and didn't want to show it to the world. (Turns red.) >-- >Gerry Groetjes Albert -- Albert van der Horst, UTRECHT,THE NETHERLANDS Economic growth -- being exponential -- ultimately falters. albert@spe&ar&c.xs4all.nl &=n http://home.hccnet.nl/a.w.m.van.der.horst
[toc] | [prev] | [next] | [standalone]
| From | hughaguilar96@gmail.com |
|---|---|
| Date | 2015-01-09 13:08 -0800 |
| Message-ID | <54711805-823a-417d-baee-de9186d7b82d@googlegroups.com> |
| In reply to | #35665 |
On Friday, January 9, 2015 at 1:20:00 PM UTC-7, Gerry wrote: > On 09/01/2015 15:25, Albert van der Horst wrote: > > SCR # 83 > > 0 ( VALUE TO FROM ) \ AvdH B2aug07 > > 1 > > 2 > > 3 VARIABLE TO-MESSAGE \ 0 : FROM , 1 : TO , 2 : +TO . > > 4 CREATE _value_jumps '@ , '! , '+! , > > 5 : FROM 0 TO-MESSAGE ! ; > > 6 \ ISO > > 7 : TO 1 TO-MESSAGE ! ; > > 8 \ ISO > > 9 : +TO 2 TO-MESSAGE ! ; > > 10 > > 11 \ ISO > > 12 : VALUE CREATE , DOES> _value_jumps TO-MESSAGE @ CELLS + > > 13 @ EXECUTE FROM ; > > 14 > > > > Note that ISO means, "look in the standard for what the word does". > > I suggest you try looking for +TO in the standard Most implementation of +TO aren't any good anyway because they don't support local variables. I have a working implementation of +TO in the novice-package. The ANS-Forth standard doesn't have +TO --- does Forth-200x have it? --- if so, does it support both global VALUEs and local variables?
[toc] | [prev] | [next] | [standalone]
| From | Gerry Jackson <gerry@jackson9000.fsnet.co.uk> |
|---|---|
| Date | 2015-01-09 21:34 +0000 |
| Message-ID | <m8phfv$ms7$1@dont-email.me> |
| In reply to | #35669 |
On 09/01/2015 21:08, hughaguilar96@gmail.com wrote: > On Friday, January 9, 2015 at 1:20:00 PM UTC-7, Gerry wrote: >> On 09/01/2015 15:25, Albert van der Horst wrote: >>> SCR # 83 >>> 0 ( VALUE TO FROM ) \ AvdH B2aug07 >>> 1 >>> 2 >>> 3 VARIABLE TO-MESSAGE \ 0 : FROM , 1 : TO , 2 : +TO . >>> 4 CREATE _value_jumps '@ , '! , '+! , >>> 5 : FROM 0 TO-MESSAGE ! ; >>> 6 \ ISO >>> 7 : TO 1 TO-MESSAGE ! ; >>> 8 \ ISO >>> 9 : +TO 2 TO-MESSAGE ! ; >>> 10 >>> 11 \ ISO >>> 12 : VALUE CREATE , DOES> _value_jumps TO-MESSAGE @ CELLS + >>> 13 @ EXECUTE FROM ; >>> 14 >>> >>> Note that ISO means, "look in the standard for what the word does". >> >> I suggest you try looking for +TO in the standard > > Most implementation of +TO aren't any good anyway because they don't support local variables. I have a working implementation of +TO in the novice-package. > > The ANS-Forth standard doesn't have +TO --- does Forth-200x have it? --- It's not in the forth14-5.pdf document dated Nov 2014. -- Gerry
[toc] | [prev] | [next] | [standalone]
| From | hughaguilar96@gmail.com |
|---|---|
| Date | 2015-01-10 14:00 -0800 |
| Message-ID | <5b37ed68-af7a-44c9-b4db-9239867233c6@googlegroups.com> |
| In reply to | #35671 |
On Friday, January 9, 2015 at 2:34:20 PM UTC-7, Gerry wrote: > On 09/01/2015 21:08, hughaguilar96@gmail.com wrote: > > Most implementation of +TO aren't any good anyway because they don't support local variables. I have a working implementation of +TO in the novice-package. > > > > The ANS-Forth standard doesn't have +TO --- does Forth-200x have it? --- > > It's not in the forth14-5.pdf document dated Nov 2014. In my language, I have -! AND! OR! XOR! etc.. All useful, which is why C has them. Strictly speaking, they aren't needed because a good optimizer should be able to get rid of all the pushes and pops to the stack anyway --- I'm undecided if I want to expose them to the user or just let the optimizer compile them internally. If I expose them to the user, then that makes my language "fat" and the user has more words to learn. OTOH, they shorten the source-code which presumably helps readability. Having +! but not the others is a bad idea though, as it indicates indecision one way or the other. I am getting rid of words like 1+ that are just a throwback to the 1970s when optimizing compilers didn't exist for Forth. At my encouragement, Slava provided something like */ for Factor (this was so he could write LC53 in Factor). It is hidden from the user however --- the optimizer compiles it internally.
[toc] | [prev] | [next] | [standalone]
| From | hughaguilar96@gmail.com |
|---|---|
| Date | 2015-01-11 11:45 -0800 |
| Message-ID | <861db16d-9969-4d39-ac69-734daaa44f9f@googlegroups.com> |
| In reply to | #35690 |
On Saturday, January 10, 2015 at 3:00:36 PM UTC-7, hughag...@gmail.com wrote: > On Friday, January 9, 2015 at 2:34:20 PM UTC-7, Gerry wrote: > > On 09/01/2015 21:08, hughaguilar96@gmail.com wrote: > > > Most implementation of +TO aren't any good anyway because they don't support local variables. I have a working implementation of +TO in the novice-package. > > > > > > The ANS-Forth standard doesn't have +TO --- does Forth-200x have it? --- > > > > It's not in the forth14-5.pdf document dated Nov 2014. > > In my language, I have -! AND! OR! XOR! etc.. I got confused here and I mixed up +TO etc. with +! etc. --- this is a chronic source of confusion for me. When I'm programming, I often can't remember if I'm supposed to use ! or TO on a particular variable, and it is quite confusing when I have several variables of both kinds in use in the same function. In my own language, I got rid of TO altogether, as there is no reason to have two different kinds of variables. TO was the obvious one to discard, because it doesn't allow the variable's address to be passed around as a parameter, so it is not as robust. I remember a "Forth Dimensions" article way back in the 1980s that introduced TO and had it work with CONSTANT defined words --- I thought it was a bad idea then too. My language is actually much simpler than ANS-Forth --- all this gratuitous complication that has no discernible purpose gets filed under 'E' of Ediocy, and forgotten about forever.
[toc] | [prev] | [next] | [standalone]
| From | Paul Rubin <no.email@nospam.invalid> |
|---|---|
| Date | 2015-01-09 13:28 -0800 |
| Message-ID | <87y4pbr6e7.fsf@jester.gateway.sonic.net> |
| In reply to | #35651 |
Paul E Bennett <Paul_E.Bennett@topmail.co.uk> writes: > I never used the shadow screen approach, preferring instead to include > enough comments within the source code itself (that way the comments never > got parted from the code). Was that still with 16x64 screens? Did it get in the way of having enough code on the screen to see what you were doing? Did you have a way to interact with the interpreter while still having code on the screen?
[toc] | [prev] | [next] | [standalone]
| From | Paul E Bennett <Paul_E.Bennett@topmail.co.uk> |
|---|---|
| Date | 2015-01-10 22:41 +0000 |
| Message-ID | <chdo4fFogjmU1@mid.individual.net> |
| In reply to | #35670 |
Paul Rubin wrote: > Paul E Bennett <Paul_E.Bennett@topmail.co.uk> writes: >> I never used the shadow screen approach, preferring instead to include >> enough comments within the source code itself (that way the comments >> never got parted from the code). > > Was that still with 16x64 screens? Did it get in the way of having > enough code on the screen to see what you were doing? Did you have a > way to interact with the interpreter while still having code on the > screen? I have tended to use a more vertical style than most and it was not unusual for me to have just one or two definitions per screen. Yes, it was the usual 16*64 block. Sometimes the comments would occupy half a block with just a three line definition. Sometimes I would include defining an essential constant or variable within the same block. I planned projects out using a number of triads to hold the essential conceptual lexicon I needed. With n THRU-USING and n LOAD-USING I could bring in components from other blocks (I have only ever used the blocks in files between leaving tape storage until I switched to files proper more recently). I embedded a few useful tools into my development environment that enabled me to keep track of what I was doing at all times. It is usually easier to concentrate on one thing at a time but when you needed to focus on more than that the added tools helped. With files the modus operandi has had to change a bit. Now I have my development base on one half of the screen and the editor on the other half. Had to ditch the tools that were useful with blocks when switching over to files. I have posted code here in both styles of layout (having converted the blocks to a plain text file first). I am sure a bit of time with Google will find it. -- ******************************************************************** Paul E. Bennett IEng MIET.....<email://Paul_E.Bennett@topmail.co.uk> Forth based HIDECS Consultancy.............<http://www.hidecs.co.uk> Mob: +44 (0)7811-639972 Tel: +44 (0)1235-510979 Going Forth Safely ..... EBA. www.electric-boat-association.org.uk.. ********************************************************************
[toc] | [prev] | [next] | [standalone]
| From | hughaguilar96@gmail.com |
|---|---|
| Date | 2015-01-10 18:49 -0800 |
| Message-ID | <beb6df53-5ee5-45e2-97a0-c33af9ac3671@googlegroups.com> |
| In reply to | #35691 |
On Saturday, January 10, 2015 at 3:41:23 PM UTC-7, Paul E Bennett wrote: > I planned projects out using a number of triads to hold the essential > conceptual lexicon I needed. With n THRU-USING and n LOAD-USING I could > bring in components from other blocks (I have only ever used the blocks in > files between leaving tape storage until I switched to files proper more > recently). That wasn't in Forth-83, and I don't think UR/Forth had it, or I would have used it --- what Forth was that? I might have been able to write that --- it would require saving the context of the current file --- there is BLK and >IN but I don't know where the handle for the file would be. I don't think USING was Forth-83 either, so none of this would be standard. There weren't any code-libraries available anyway, and I was hired to write MFX not general-purpose code, so it was a non-issue anyway. I never even heard the term "triad" before this thread --- I never made paper print-outs, as MFX was growing too fast for anybody to bother with a print-out --- besides that, UR/Forth had good support for working with source-files. I never made print-outs in C either --- I haven't actually printed out a source-file since C64 days (the C64 screen was only 40 chars wide). > I embedded a few useful tools into my development environment that enabled > me to keep track of what I was doing at all times. It is usually easier to > concentrate on one thing at a time but when you needed to focus on more than > that the added tools helped. UR/Forth had a utility that would display all of the 1st lines of all of the screens in a range --- so, we would generally put a comment on the 1st line that described what words were in the screen to help find them --- there was no LOCATE, although I could have written it if I had had the time. The big problem, was that I was hired to write MFX, not to write utility programs, so I really didn't have time to write code that wasn't directly related to the program. I think UR/Forth was the best Forth available in MS-DOS days, but it was still pretty primitive --- not the glitzy IDE you get with C or Turbo Pascal.
[toc] | [prev] | [next] | [standalone]
Page 2 of 4 — ← Prev page 1 [2] 3 4 Next page →
Back to top | Article view | comp.lang.forth
csiph-web