Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight
 
PerlMonks  

Re^3: Basic Coding Tips: Parsimonious Parameterization

by demerphq (Chancellor)
on Jan 29, 2005 at 10:26 UTC ( #426215=note: print w/ replies, xml ) Need Help??


in reply to Re^2: Basic Coding Tips: Parsimonious Parameterization
in thread Basic Coding Tips: Parsimonious Parameterization

First, thanks for the link, thats an interesting site. :-) But i have to quibble a little with this particular example. Obviously the code posted in that link appears hokey. Not using pack/substr or vec for the index string strikes me as a little odd for instance. But the overall strategy represented there is not IMO that crazy. Consider that if you have large numbers of strings such a strategy can greatly reduce the overhead of storing it in perl. Each SV in perl represents a certain amount of space, for the sake of the discussion lets say 20 bytes, versus the 2 - 8 required by a representationg akin to the one mentioned. So if we are storing large numbers of strings this overhead can be quite burdensome. Also, by using such an approach you can grab a large chunk of memory at a single go instead of doing a large number of small allocations. (Its interesting (if a little obvious) to consider that if you have 100k null terminated strings you are using 100k to simply store the end of string point :-)

Anyway i didnt think such comments were worth posting on the site you linked to, but I do think its worth mentioning here.

---
demerphq


Comment on Re^3: Basic Coding Tips: Parsimonious Parameterization
Re^4: Basic Coding Tips: Parsimonious Parameterization
by Aristotle (Chancellor) on Jan 29, 2005 at 16:06 UTC

    Oh, I know well enough. In the case of that example though, the coder did so many other hokey things at once that it doesn't seem particularly likely that this was well-reasoned conscious choice.

    Makeshifts last the longest.

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (13)
As of 2014-07-10 19:17 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    When choosing user names for websites, I prefer to use:








    Results (215 votes), past polls