Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!cs.utexas.edu!uunet!mcvax!cernvax!ethz!mrys From: mrys@ethz.UUCP (Michael Rys) Newsgroups: comp.lang.apl Subject: Re: SYMBOL TABLE (was : Problem with )COPY ) Keywords: )symbol symbol table Message-ID: <830@ethz.UUCP> Date: 26 Apr 89 09:34:16 GMT References: <575@moore.UUCP> <2270@water.waterloo.edu> Reply-To: mrys@bernina.UUCP (Michael Rys) Organization: ETH Zuerich, Switzerland Lines: 49 In article <2270@water.waterloo.edu> ljdickey@water.waterloo.edu (Lee Dickey) writes: [stuff deleted] > >But I just want to complain about the necessity of any user ever having >to use the )SYMBOL command. APL is a language that allows dynamic storage >allocation. All APL users are accustomed to making statements like > > A <- A, MORE > >and having more storage for "a" set aside. Why should not this >same thinking have permeated into the thinking of the implementors? >Why should someone have to know, in advance, how many variables they >might need. Why isn't the symbol table empty and small in a clear >ws, and why doesn't it grow as needed, dynamically, just as the >variables do in a ws? To me, a SYMBOLS command is like a DIMENSION >statement. It sets aside, in advance, space for pointers where >names and values are kept. Why isn't this just another table, just >like all other arrays in APL? > >There, I said it. > >Any response? > Symbol tables are normally implemented at a fixed start address (like the stack) in the workspace memory. Therefore it is not treated the same as an APL array (at least not in all implementation). This still does not justify why a symbol table cannot grow dynamically. Remembering the old days of VS APL I always wondered why IBM did not implement the symbol table using an automatic allocation scheme. How happy I was when I started using Sharp APL and realized that the symbol table actually increased its size automatically when needed (however shrinking does not happen automatically). So I forgot )symbol till the day I received these news article ;^)... >-- > L. J. Dickey, Faculty of Mathematics, University of Waterloo. Michael Rys UUCP: mrys@ethz.UUCP or mrys@bernina.UUCP EAN: mrys@ifi.ethz.ch IPSANet: mrys@ipsaint Voice: +41 1 242 35 87 Letter: V. Conzett Str. 34; CH-8004 Zuerich; Switzerland --- Wovon man nicht sprechen kann, darueber muss man schweigen --- Ludwig Wittgenstein, Tractatus logico-philosophicus