World: r3wp
[Core] Discuss core issues
older newer | first last |
Graham 23-Oct-2009 [14897x3] | Not for me .. I get vid extension kit! |
nope .. not in google on those parameters | |
Let me try google.ca | |
Maxim 23-Oct-2009 [14900] | I get the rebol doc base page for R3 |
Graham 23-Oct-2009 [14901] | Hmm... perhaps I need to remove "google" from the search!! |
Maxim 23-Oct-2009 [14902] | hahahahha |
Graham 23-Oct-2009 [14903] | I pass ... |
Maxim 23-Oct-2009 [14904] | hum... that can take different meanings... hehe http://curecode.org/rebol3/ |
Graham 23-Oct-2009 [14905] | I don't wish to create an account ... |
Sunanda 23-Oct-2009 [14906] | Then you'll only ever see other people's bugs fixed :) |
Graham 23-Oct-2009 [14907] | I'm not using R3 at present |
Maxim 23-Oct-2009 [14908x3] | I'm creating a ticket... I also found a rebol crash! (even in A92) >> d: now >> d/6: 5 >> print d **CRASH** |
curecode is also for wishes... so if you want R3 to be what you want it to, you have to speak... and curecode is that place... many blog posts where originated from good curecode reports/suggestions. | |
ticket 1292 | |
Henrik 23-Oct-2009 [14911x3] | Actually some bugs are fixed the same day as they are posted. |
The entire date handling system in R3 was rewritten a while ago, AFAIK. | |
And I have had one date related issue fixed. | |
Maxim 23-Oct-2009 [14914] | (going to R3) |
Gabriele 23-Oct-2009 [14915] | Graham, the explanation is that dates are not really mutable (or more precisely, are always passed by value and not reference). the date/anything: is a hack. (I sometimes think that, no matter how useful they are, those hacks only hurt a language in the end...) |
Graham 23-Oct-2009 [14916x2] | That makes sense. |
But pragmatism usually outweighs purity in the real world :) | |
Henrik 23-Oct-2009 [14918x2] | how about: to-object now = make object! [ year: 2009 month: 10 etc... ] |
I'm going to write it up as a wish to be implemented after the crash is fixed :-) | |
Geomol 23-Oct-2009 [14920x2] | REDUCE can be used to reduce blocks, and by that evaluate parens within blocks: >> reduce [(1 + 2)] == [3] But REDUCE won't evaluate parens themselves: >> reduce first [(1 + 2)] == (1 + 2) Is that a bug? (Same in R3.) |
I also find this a bit strange: >> do first [(1 + 2)] == 3 >> do to paren! "1 + 2" ** Script Error: + word has no context ** Near: 1 + 2 | |
Steeve 23-Oct-2009 [14922] | I see no bugs. REDUCE, acts on blocks, nothing else. TO-PAREN and TO-BLOCK on strings, act like LOAD, but don't bound the result in any context. Both of them have well known behavior. It's perhaps a lack of good documentation but no bugs. |
Geomol 23-Oct-2009 [14923] | I'm probably wondering, because parens works in many ways the same as blocks, but not when reduced. The same can be said about paths. and Parens and paths are default being evaluated (by the scanner/lexical analysis), blocks are not. And when you reduce blocks, parens and paths within the block are being evaluated. On the other hand reducing parens and paths won't evaluate them. I tend to agree, it's not bugs but lack of documentation. |
amacleod 26-Oct-2009 [14924x3] | What's a quick method to find duplicates in a series? |
kind of the opposite of UNIQUE | |
given 'a' is a block of numbers: b: unique a foreach c b [remove a c] probe a not pretty but works | |
BrianH 26-Oct-2009 [14927x3] | >> a: [a a a b b c d e e] foreach x b: unique a [remove find a x] unique a == [a b e] |
It only removes the first of each from a - any additional ones are left behind. The last unique gets rid of the remaining dups. | |
Your version won't work since REMOVE only takes one parameter, not two. | |
amacleod 26-Oct-2009 [14930] | I was going to add that additional unique at the end also but it helps for me to not only know which are duplicated but how many times... Thanks Brian |
BrianH 26-Oct-2009 [14931] | >> a: [a a a b b c d e e] remove-each x b: unique a [not find find/tail a x x] b == [a b e] Doesn't modify a :) |
amacleod 26-Oct-2009 [14932] | that's handy |
BrianH 26-Oct-2009 [14933x4] | Should be faster too. |
If a is sorted: | |
>> a: [a a a b b c d e e] b: [] foreach x unique a [repend b [x 1 + offset? find a x find/last a x]] b == [a 3 b 2 c 1 d 1 e 2] | |
Or you could use REDUCE/into or map! if you are using R3. | |
amacleod 26-Oct-2009 [14937] | Awsome... |
BrianH 26-Oct-2009 [14938x3] | If you preallocate the result it might be faster in some cases - it should be twice the length of the UNIQUE a (or the saame length in map) |
...same length if map!. | |
Other tricks can be used if you can't sort a. | |
Ashley 26-Oct-2009 [14941] | unique remove-each x a [(find a x) = find/last a x] |
Ladislav 27-Oct-2009 [14942] | not that I want to do nit-picking, but it should be noted, that the algorithms presented above are all O(n * n), while an O(n * log-e n) algorithm can be written, although such an algorithm is likely to be a bit more complicated |
Gabriele 28-Oct-2009 [14943] | I'd just SORT then PARSE... |
Ashley 28-Oct-2009 [14944] | Sounds like a new puzzle entry! ;) |
Maxim 28-Oct-2009 [14945] | hehe |
BudzinskiC 28-Oct-2009 [14946] | Puzzle entry.. Is there a code golf website for REBOL? Like codegolf.com ? I did those with Ruby, that was pretty fun. |
older newer | first last |