World: r3wp
[!REBOL3-OLD1]
older newer | first last |
shadwolf 9-Apr-2009 [13016] | Henrik it could be because it's not doing what ppl used to code their own hash table in C expects from a hash! table any way it's GONE farewell :P |
Sunanda 9-Apr-2009 [13017] | No, it proves it is used. It is seen in about 2% of REBOL scripts on REBOL.org. If 2% = 0% then we can prove that no one ever uses REBOL. |
shadwolf 9-Apr-2009 [13018] | what you want a farewell party for hash! with champaign and etc.. ? |
Janko 9-Apr-2009 [13019] | but my understanding is that hash functions different than hashtables or dictionaries in other languages? and map will work that way.. or did you need the specific way how hash worked? If I used hash I used in as a hashtable (because I wasn't aware of the difference) and I could have gotten nasty errors because of it |
shadwolf 9-Apr-2009 [13020] | earing from the few in teh God's secret map! is much better even if it's not fully done. I'm a morron so the only thing left to me is to believe them ^^ |
PeterWood 9-Apr-2009 [13021] | I used hash! to build a long list of de-duplicated words. It was by far the fastest way in R2. I was pleasantly surprised when I found that using map! and storing every associated value as #[none] was quicker in R3 than hash! in R2. It just seems wrong to be wasting all that memory storing all those unnecessary ones. |
Henrik 9-Apr-2009 [13022] | PeterWood, I get the crash you had just now. |
PeterWood 9-Apr-2009 [13023] | I hope it will be that fast once all the bugs are fixed. |
shadwolf 9-Apr-2009 [13024] | http://shadwolf.free.fr/port-http.r |
PeterWood 9-Apr-2009 [13025] | ones -> nones |
shadwolf 9-Apr-2009 [13026] | http://shadwolf.free.fr/port-http.r->> that's teh 3365 script |
PeterWood 9-Apr-2009 [13027x2] | ERREUR 404 - Document non trouvŽ |
Don't worry, we all have the script. It is the error in the Rebol chat program we are discussing. | |
shadwolf 9-Apr-2009 [13029] | http://shadwolf.free.fr/prot-http.r |
PeterWood 9-Apr-2009 [13030] | :-) |
Henrik 9-Apr-2009 [13031] | hmm... here's a fun one: decompress read http://www.rebol.com/r3/chat.r Gobbles up memory and just hangs. |
shadwolf 9-Apr-2009 [13032] | i want to post in server admin to remove shadw0lf user how do i do it ? |
Henrik 9-Apr-2009 [13033] | I guess this is due to the new method for COMPRESS to allocate memory prior to decompressing, but if that is possible, then it's simple to DoS a rebol server that relies on compressed input, just by sending a malformed binary. |
shadwolf 9-Apr-2009 [13034] | i'm in server admin group |
Henrik 9-Apr-2009 [13035] | shadwolf, not sure that is possible. |
shadwolf 9-Apr-2009 [13036] | ok never mind |
Pekr 9-Apr-2009 [13037] | Henrik - under Windows I get "Not enough memory" message. But the script is 24KB. There has to be serious bug in there, no? :-) |
Henrik 9-Apr-2009 [13038x2] | Pekr, I remember Carl mentioning this a long time ago: DECOMPRESS reads first how long the item to decompress is, then allocates memory and then attempts decompression, so it's a deliberate design choice for memory limited embedded devices. |
So if you have a 2 kb compressed binary but the header of that binary states that its 10 GB in size, you will get that error. | |
Graham 9-Apr-2009 [13040] | I used hash! for my Bayes based spam filtering program. |
Pekr 9-Apr-2009 [13041] | Wasn't map supposed to be a hash! replacement plus/minus few differences in behaviour? |
Henrik 9-Apr-2009 [13042] | I think I have a fix for the guest N bug in chat. |
Sunanda 9-Apr-2009 [13043x2] | Carl recommending hash! here: http://www.rebol.com/article/0020.html Second thoughts for R3 here: http://www.rebol.net/r3blogs/0052.html |
And some refinements to the redesign here: http://www.rebol.net/r3blogs/0137.html | |
shadwolf 9-Apr-2009 [13045x9] | look the what's wrong part of the articles you gave sunanda that's clear |
2. You cannot use keys directly as indices. | |
damn !! for a hash table using keys as indice isn't it the what is it all about thing ? | |
1. All values are keys, even the content values. ... stupid since they can't be indice | |
you want me to continue puttinf dot on i and bars on T sunanda or you got why hash! is meaningless ? | |
3. You cannot add new values using the key value assignment form. ->> too bad ... so i can't do cycling tables using hash inidice wich is lesson 3 for C programming any decent university | |
You have no control over case-sensitivity for hashes. | |
So, what do we want to do about it? We are at a point where we need to finalize the hash datatype for REBOL 3.0. It is possible to make some change | |
and since doing some change in an incomplete things is worst than redoing it from scratch then it's better to forget about it and create map! | |
Pekr 9-Apr-2009 [13054x3] | here's some map! doc - http://rebol.net/wiki/Map- isn't it replacement for hash!? |
btw - we have 'map function. This is imo confusing. We sometimes use shortcuts, e.g. for make object! we have 'context. Will not users expect 'map being a shortcut for make map! ? | |
btw - it was extremly difficult to find above Map link. The DocBase structure is completly twisted. | |
shadwolf 9-Apr-2009 [13057x6] | can't be more clear on the matter |
A map is an name-to-value associative array. It uses hashing for high performance. Sometimes this kind of association is also referred to as a dictionary. The map datatype replaces the R2 hash datatype. The motivation for this replacement was that some people in the user community felt the design of the older hash datatype was confusing, since it hashed both keys and their data. The new map datatype just hashes keys. Data is not hashed. | |
when do you need hash ... hum when you deal with a database to make a cashing system to not have to use the database access on any request for example | |
or when you want to do a similar thing like a dictionnary (for search engine design are widely derived from hash table concept) | |
or more simply to be able to travel through a large number of complexe data | |
the faster possible | |
Pekr 9-Apr-2009 [13063] | so what you are trying to say is - positive, or negative? I somehow don't understand, what you mean by all of that :-) |
shadwolf 9-Apr-2009 [13064x2] | it's only a technology some usefull stuff for the one needing them |
for the one that doesn't need them well ... they don't need it but if you have to reduce a langage to only what only 1 specific guy need you will not go any far | |
older newer | first last |