Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris

Re: Re: Re: Re: Of Symbol Tables and Globs

by broquaint (Abbot)
on Nov 09, 2002 at 16:18 UTC ( #211654=note: print w/replies, xml ) Need Help??

in reply to Re: Re: Re: Of Symbol Tables and Globs
in thread Of Symbol Tables and Globs

Also, more importantly, you've got a terminology mismatch in the whole document: symbol tables aren't like hashes, they are hashes.
They are accessed like hashes, but they are not hashes. It could perhaps be said that hashes are not symbol tables but symbol tables can be treated exactly like hashes except they can only store globs and have various sorts of magical behaviour associated. But that's a little confusing and long-winded.
%main:: (AKA %::, which you might want to mention explicitly)
I'll see if I can slip it in there somewhere :)

Thanks for the input!


  • Comment on Re: Re: Re: Re: Of Symbol Tables and Globs

Replies are listed 'Best First'.
Re: Re: Re: Re: Re: Of Symbol Tables and Globs
by theorbtwo (Prior) on Nov 09, 2002 at 20:42 UTC

    I sit corrected, in my expensive wheelychair that shows up in TV shows, but that I got cheaply because it was missing a lumbar support pillow, and the co. was going out of busniess. (Yes, that sentance rambled on for no relevant reason, just like this one.) However, it seems in several places, IIRC, that you're calling both symbol tables and globs "like hashes, but not". (I still think, actualy, that symbol tables are magic hashes, and not another sort of entity, but I'll need to doublecheck in the source, which isn't handy.)

    Warning: Unless otherwise stated, code is untested. Do not use without understanding. Code is posted in the hopes it is useful, but without warranty. All copyrights are relinquished into the public domain unless otherwise stated. I am not an angel. I am capable of error, and err on a fairly regular basis. If I made a mistake, please let me know (such as by replying to this node).

      I still think, actualy, that symbol tables are magic hashes, and not another sort of entity
      After some further investigation I've come to the conclusion that under the hood symbol tables are indeed just fancy hashes. So I now sit corrected :) I believe their special properties are as follows
      • can't be lexically declared (due to the ::)
      • they can be declared with a package declaration
      • they hold the globs which hold the package level variables/subroutines/etc
      • must have a :: appended to the name to qualify as a symbol table
      • probably other bits and pieces which don't spring to my misty mind on a Monday morning
      I guess this means I'll have to change a lot of the wording, but at least it'll be accurate this time. Thanks for forcing me to put my money where my node is :)


Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://211654]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others taking refuge in the Monastery: (5)
As of 2021-04-14 06:04 GMT
Find Nodes?
    Voting Booth?

    No recent polls found