World: r3wp
[Core] Discuss core issues
older newer | first last |
amacleod 30-Nov-2011 [2620] | It's enabled but does not sync as fast as the drift and I'm having trouble doing it manually...keep getting an error and I tried several time servers. |
Henrik 7-Dec-2011 [2621] | if I have a file with url-encoded chars in it, what's the fastest way to decode them? |
Dockimbel 7-Dec-2011 [2622] | dehex |
Henrik 7-Dec-2011 [2623] | Thank you very much. I forgot that. |
Henrik 10-Dec-2011 [2624] | what is the fastest way to find the number of digits in a number, if you want to use it to calculate the pixel width of the number for a table column? simply using: length? form number ? |
Geomol 10-Dec-2011 [2625x2] | My guess would be: 1 + to integer! log-10 number , but that's slightly slower than yours, it seems. |
Can your number both be integer and decimal? | |
Henrik 10-Dec-2011 [2627] | it's most likely to be a decimal |
Geomol 10-Dec-2011 [2628] | Then mine won't work. |
Henrik 10-Dec-2011 [2629] | I may have found another way without needing to work on the length. Thanks, anyway. |
Geomol 10-Dec-2011 [2630] | :) |
Ladislav 12-Dec-2011 [2631] | but that's slightly slower than yours, it seems - strange, here it looks much faster than length? form |
Geomol 12-Dec-2011 [2632] | >> number: 1234 == 1234 >> time [loop 1000000 [1 + to integer! log-10 number]] == 0:00:00.293239 >> time [loop 1000000 [length? form number]] == 0:00:00.28022 On R2 version 2.7.7.2.5 |
Sunanda 12-Dec-2011 [2633] | I see the log-10 loop as around 18% faster under core 2.7.8. So this optimisation depends, it seems, on specific machines and versions. |
Kaj 12-Dec-2011 [2634] | It would depend on the relative speeds of the CPU and the FPU |
Ashley 14-Dec-2011 [2635] | Ran code like the following against a 600MB file of 500,000+ lines: file: read/lines %log.csv foreach line file [ remove/part line 1000 ] and was surprised that the foreach loop was near instantaneous (I'd assumed 500,000+ removes would at least take a second or two). I'm not complaining, just curious. ;) |
Geomol 14-Dec-2011 [2636] | Does it work? Or do you hit a 4GB boundary with some internal structures, so there is an error, you don't get out? |
Ashley 14-Dec-2011 [2637] | It certainly worked (file size was 400MB not 600MB). |
BrianH 14-Dec-2011 [2638] | R2 or R3? R3 can do removes from the head of the string as fast as it can from the tail - near instantaneously. I don't think that this is true for R2. |
Ashley 15-Dec-2011 [2639] | R2. |
Endo 15-Dec-2011 [2640] | I do something similar, generating 10'000 lines and writing to a file takes 5-6 seconds to complete on my Intel Core 2 Duo E7400 (2.8 Ghz) 3GB RAM. 500'000 lines a bit too much but you read the whole file into memory so it is possible. Your PC is a good one as well I think. |
Ashley 16-Dec-2011 [2641] | iCore 7 with 8GB RAM and a 256GB SSD ... work PC. |
Endo 16-Dec-2011 [2642] | which means 10 times better than mine :) its normal to have that performance with 8GB RAM + SSD I think. file & block operations & foreach is fast on R2 in my experience. |
GrahamC 16-Dec-2011 [2643] | Since Carl seems to have abandoned Rebol ...I wonder if this triggers the release of the source code held in escrow? |
Sunanda 16-Dec-2011 [2644] | That would depend on what the escrow license says. Unless anyone here has signed a REBOL escrow source license, all we have is a vague description: http://www.rebol.com/faq.html#058 |
GrahamC 16-Dec-2011 [2645] | I wonder if Reichart knows ... Qtask depends on Rebol |
PeterWood 17-Dec-2011 [2646] | He may well know but I think that it is wishful thinking that the source may be released under an escrow agreement just because Carl has been quiet for a while. |
Henrik 17-Dec-2011 [2647] | Since Carl seems to have abandoned Rebol - there is no evidence of that. A few weeks ago, it was stated here that Carl was working on R3 again. |
Gabriele 17-Dec-2011 [2648] | Qtask does not depend on any changes being made to REBOL. |
Henrik 17-Dec-2011 [2649x2] | YY is a block of 4 decimals, which should be containing the same value, but it seems they are not the same to UNIQUE: == [5.0 5.0 5.0 5.0] ; derived from a calculation >> yy/1 == yy/2 == true >> yy/1 == yy/3 == true >> yy/1 == yy/4 == true >> unique yy == [5.0 5.0] ; huh? >> zz: [5.0 5.0 5.0 5.0] ; typed directly in >> unique zz == [5.0] |
Seems it's already been repported: http://www.rebol.net/cgi-bin/rambo.r?id=4093& | |
Geomol 17-Dec-2011 [2651] | It's internal rounding in REBOL, is my guess. You can see it with R3: >> to decimal! #{4013 FFFF FFFF FFFF} == 5.0 >> to decimal! #{4014 0000 0000 0000} == 5.0 >> to decimal! #{4014 0000 0000 0001} == 5.0 So decimals may look the same, even if they're not. |
Henrik 17-Dec-2011 [2652] | it works in R3. |
Geomol 17-Dec-2011 [2653x2] | In R3, you can try do a >to binary!< on the results from the calculation and see the difference. |
In R2, you can do some rounding before calling unique. | |
Ladislav 17-Dec-2011 [2655x2] | In R3 also: >> print mold/all to decimal! #{4013 FFFF FFFF FFFF} 4.9999999999999991 >> print mold/all to decimal! #{4014 0000 0000 0000} 5.0 >> print mold/all to decimal! #{4014 0000 0000 0001} 5.0000000000000009 |
see http://issue.cc/r3/1634 | |
amacleod 18-Dec-2011 [2657] | I need to extract the data from an image file so it does not include the "64#" header and I just have the 64 bit encoding: 64#{ /9j/4faARXhpZgAATU0AKgAAAAgABwEPAAIAAAAESFRDAAEQAAIAAAAIAAAAYgEa AAUAAAABAAAAagEbAAUAAAABAAAAcgEoAAMAAAABAAIAAAITAAMAAAABAAEAAIdp is3eIoxUdG7n/9k= } I just wnat the stuff between the quotes but as its a binary I can't seem to parse it or extract it with other methods like a text file. |
Geomol 18-Dec-2011 [2658x2] | x: mold 64#{ /9j/4faARXhpZgAATU0AKgAAAAgABwEPAAIAAAAESFRDAAEQAAIAAAAIAAAAYgEa AAUAAAABAAAAagEbAAUAAAABAAAAcgEoAAMAAAABAAIAAAITAAMAAAABAAEAAIdp is3eIoxUdG7n/9k= } copy/part skip x 3 -5 + length? x |
Notice the molded version is twice as large as the original binary. | |
Gabriele 18-Dec-2011 [2660] | ENBASE |
amacleod 18-Dec-2011 [2661] | enbase! Easy! That's what I'm looking for thanks, guys. |
Geomol 18-Dec-2011 [2662] | That wasn't clear, but good you solved your problem. |
Geomol 19-Dec-2011 [2663] | The R2 dictionary for DETAB say, the string is modified, but it isn't. Also only the first tab before the first non-space character is replaced by 4 spaces, the rest with 1: >> s: "^-abc^-def" == "^-abc^-def" >> detab s == " abc def" >> s == "^-abc^-def" Has this always been this way? Doc: http://www.rebol.com/docs/words/wdetab.html |
Oldes 19-Dec-2011 [2664x4] | == "^-ab^-def" >> detab s == " ab def" |
The behaviour is correct (it's not just replace/all). The dictionary must be bad as it does not modify. | |
The doc above is not so bad, but it's true, that in R3 it's really marked as: (Modifies) | |
But I'm not sure there is anybody left who can fix it. | |
Geomol 19-Dec-2011 [2668x2] | Is there a reason for this? >> shift 1 32 == 1 |
Ah, probably just because 32 is being // 32, as can be seen with this: >> shift 2 32 == 2 >> shift 2 33 == 1 | |
older newer | first last |