In article ,   
   Hans Bezemer wrote:   
   >On 27-04-2025 08:21, dxf wrote:   
   >> On 26/04/2025 9:07 pm, albert@spenarnc.xs4all.nl wrote:   
   >>> In article ,   
   >>> dxf wrote:   
   >>>> On 26/04/2025 2:34 am, Hans Bezemer wrote:   
   >>>>> ...   
   >>>>> Yeah, I have helped to make a proposal for PLACE and +PLACE - which   
   never even made it to the voting stage.   
   >>>>   
   >>>> It's a nice symmetry. OTOH the remaining vendors use APPEND and why   
   should they change?   
   >>>>   
   >>>   
   >>> $+! was even earlier. It predates the IBM PC XT.   
   >>> (Osborne, CP/M)   
   >>   
   >> Even PLACE was new back then!   
   >>   
   >> String stacks often had $+ or equiv. Somehow I never took to them.   
   >> Not enough applications that warranted the effort?   
   >   
   >Let's face it - the string support was notoriously bad in Forth. People   
   >openly complained about that.   
      
   You must get rid of two ideas that are in the basic/lisp/c world.   
      
   1. You don't need dynamic strings. Just keep track of where you left them.   
   [ If you really need them, don't do circular buffer or string stacks.   
   Interface to the memory wordset (ALLOCATE c.s). ]   
      
   2. Zero ended strings is a stupid 60's c-cludge. Copying that into Forth is   
   beyond .. . They can't accomodate zero byte in strings, They cannot   
   accomodate multiple byte characters.   
      
   If you fetch a string, you have a "c-addr count". Forth can have 2 items   
   on the stack you know.   
      
   So In my CP/M day I get by with $! $@ $+! and $C+! .   
   I made a program playing a text adventure game with that.   
      
   Groetjes Albert   
      
      
      
   >   
   >Hans Bezemer   
   --   
   Temu exploits Christians: (Disclaimer, only 10 apostles)   
   Last Supper Acrylic Suncatcher - 15Cm Round Stained Glass- Style Wall   
   Art For Home, Office And Garden Decor - Perfect For Windows, Bars,   
   And Gifts For Friends Family And Colleagues.   
      
   --- SoupGate-DOS v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   
|