"Jeremy White" <[EMAIL PROTECTED] l.com> To [EMAIL PROTECTED], 12/19/2005 09:59 [EMAIL PROTECTED] AM cc [EMAIL PROTECTED] forge.net, [EMAIL PROTECTED] Subject Re: [perl-win32-gui-hackers] Constants and hashing [Was: Win32::GUI::Dialog() failure]
>>our original discussions until now, I think it may be more worthwhile to >> figure out how to make _all_ 18000 constants available to Win32::GUI >>programs, without paying a huge price in memory. Those constants that >>actually get used get cached in the stash anyway... >> >> >> If speed isn't the issue then a binary search has ... > >It is difficult or impossible to do a binary search of compressed data... >so if space is the overriding issue, compression is the overriding answer, >and linear searching becomes the only practical search technique. To avoid >linear searching of the complete set, a My 2 cents:) We have 2 issues: 1) Performance. 2) Memory requirements. ... Now, for some cases, 360k is a drop in the ocean - my app runs at 50 meg before it's done anything, with the exe coming in at 6 megs - but for a 20 line utility script, having to load the dll holding the constants could be over-kill... And here I think I totally agree. We've got memory, why do we need to compress? It will certainly take time to uncompress, and you you're counting memory, then you should count the code in the compression algorithms. And then there is maintenance. And then there is time (to uncompress). And then there are complexity issues. Glenn Linderman recently posted a question on just how to acquire the Windows constants. Couldn't we use items from the Unix toolset (in Cygwin) to extract most or all of the constants? Maybe (this is an ignorant answer mind you) like: egrep '# *define' *.h | egrep 'WM_|XX_' | sed 's/# *define //' and so on? art