home bbs files messages ]

Forums before death by AOL, social media and spammers... "We can't have nice things"

   comp.lang.forth      Forth programmers eat a lot of Bratwurst      117,951 messages   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]

   Message 116,478 of 117,951   
   albert@spenarnc.xs4all.nl to dxforth@gmail.com   
   Re: HELD   
   09 May 24 13:40:00   
   
   In article <663c1f8f$1@news.ausics.net>, dxf   wrote:   
   >On 8/05/2024 7:18 pm, mhx wrote:   
   >> dxf wrote:   
   >>   
   >>> On 25/04/2024 10:05 pm, dxf wrote:   
   >>>> On 25/04/2024 8:51 pm, mhx wrote:   
   >>>>> dxf wrote:   
   >> [..]   
   >>> Regarding redirection I'd say apps intended for disk output are written   
   that   
   >>> way which implies functions have string output.  If OTOH apps are written   
   >>> for console output, then usually the OS has a mechanism for redirection in   
   >>> which case the app writer need not concern himself.   
   >>   
   >> Typically text output is meant to be read by humans, while file output is   
   mainly meant to be read by computers (further processing).   
   >> For debugging it is prudent to make sure the files are (somewhat) human   
   readable though.   
   >>   
   >> I think redirection is difficult (or at least inconvenient) from *within* a   
   program, as is switching back and forth between   
   >different streams.   
   >>   
   >> Indeed, for trivial and conventional programs, that do not use the   
   >> Forth interpreter as an essential component, the standard OS tools   
   >> may be sufficient.   
   >   
   >Text may have originally been intended for humans but it became so massive   
   that   
   >now we use computers to process it and disks to store it.  Redirecting text   
   data   
   >intended for disk to the console might be useful in certain circumstances and   
   >when amounts are small.  But the idea of sending data to disk using console   
   output   
   >statements seems confusing.  How does the programmer differentiate bona-fide   
   >console output from disk output?  I don't like it at all.   
   >   
   Using EVALUATE to extend the compiler is frowned upon by some.   
   I use FORMAT&EVAL formatting a string, then evaluate to great advantage.   
   (It is similar to MPE-forth )   
      
   Example: this is a simple OO of one screen.   
   The FORMAT&EVAL word helps distracting detail away from defining   
   classes and methods.   
      
    0 ( class endclass M: M; )                        \ AH B6jan23   
    1  "SWAP-DP" WANTED   "FORMAT" WANTED   VARIABLE LAST-IN   
    2 VARIABLE DP-MARKER   DATA NAME$ 128 ALLOT  DATA BLD$ 4096 ALLOT   
    3 : -WORD 1- BEGIN 1- DUP C@ ?BLANK UNTIL 1+ ; ( in -- firstch)   
    4 : {BLD   PP @ LAST-IN ! ;   
    5 \ Retain input since {BLD excluding word name.   
    6 : BLD}   LAST-IN @   PP @ -WORD   OVER -   BLD$ $+! ;   
    7 : class   NAME NAME$ $!   NAME$ $@ "VARIABLE ^%s" FORMAT&EVAL   
    8    "" BLD$ $! SWAP-DP   HERE DP-MARKER !   {BLD ;   
    9 : M:   BLD}   HERE DP-MARKER @ - >R   SWAP-DP :   
   10     R> NAME$ $@ "^%s  @ %d  +" FORMAT&EVAL ;   
   11 : M;   POSTPONE ;   SWAP-DP   {BLD ; IMMEDIATE   
   12 : endclass   BLD}  DP-MARKER @ HERE - ALLOT   SWAP-DP   
   13   BLD$ $@ NAME$ $@ ": BUILD-%s  HERE >R %s  R> ;" FORMAT&EVAL   
   14   NAME$ $@ 2DUP 2DUP 2DUP   
   15   ": %s  CREATE BUILD-%s  ^%s  ! DOES> ^%s  ! ;" FORMAT&EVAL ;   
      
   Groetjes Albert   
   --   
   Don't praise the day before the evening. One swallow doesn't make spring.   
   You must not say "hey" before you have crossed the bridge. Don't sell the   
   hide of the bear until you shot it. Better one bird in the hand than ten in   
   the air. First gain is a cat purring.            - the Wise from Antrim -   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]


(c) 1994,  bbs@darkrealms.ca