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 117,048 of 117,951   
   albert@spenarnc.xs4all.nl to no.email@nospam.invalid   
   Re: namespace collisions   
   02 Feb 25 12:25:39   
   
   In article <87h65dxk7c.fsf@nightsong.com>,   
   Paul Rubin   wrote:   
   >In Haskell, if you import packages X and Y, and X contains a symbol   
   >"foo", you can refer to it as just "foo" or explicitly as X.foo.   
   >   
   >If both X and Y contain foo, then saying just "foo" is ambiguous and the   
   >compiler flags it as an error.  You are required to say X.foo or Y.foo   
   >to indicate which one you want.   
      
   >   
   >Is there a simple way to do something like that in Forth, to get an   
   >error or at least a warning, if the same symbol occurs in multiple   
   >wordlists in the search order?   
      
   No special measures are required.   
   You look `fun up in the current search order, and say "isn't unique"   
   You look `fun up in the all wordlists, and say "isn't globally unique".   
      
   In ciforth you have an iterator for namespace (VOCABULARY's) e.g.   
   \ Print all namespace (voc) names in existence.   
   : .VOCS 'ID. FOR-VOCS ;   
      
   Now replace the execution token ID. by a word using SEARCH-WORDLIST .   
      
   You ask for something simple.   
   That is neither here nor there.   
   Use a simple Forth, then it is easy.   
   If you use a difficult Forth, all tasks are difficult.   
      
   >   
   >Thanks.   
      
   Groetjes Albert   
   --   
   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)   

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


(c) 1994,  bbs@darkrealms.ca