World: r3wp
[rebcode] Rebcode discussion
older newer | first last |
Gregg 10-Nov-2005 [1261] | Thanks Petr! No need to RAMBO it. I'll look into it. |
Ladislav 18-Nov-2005 [1262x2] | questions we need to get an answer for, especially from BrianH as a supplier of #3947: |
Related to string COMPARE are these features: 1) case sensitive or not 2) which string is "greater" 3) index of non-equal (tail of compare) 4) find | |
BrianH 19-Nov-2005 [1264x4] | Well after testing, it seems that the behavior of cmp is: 1) Case sensitive. Lowercase the strings for case insensitive compares. 2) If the first string is less than the second, cmp sets the return word to -1, equal sets to 0, and greater sets to 1. If two strings of different lengths and are the same for the length of the shorter string, the longer string counts as greater. Otherwise, the numeric equivalent of each corresponding character is compared. 3) You can roll your own with length?, repeatz, pick, lt.i, gt.i and breakt (if you want, I'll do it). The cmp opcode won't help here. 4) Use apply i find [ser val] - it'll be faster. |
Still, I'm glad to see cmp, sign and asr, and the fixes are welcome too. I didn't know that lsr was not unsigned before - that's what lsr means. Good fix! | |
; Index of non-equal, 1-based, assumes indexes within bounds length? x a length? y b gt.i x y ift [set.i x y] repeat i x [ pick x a i pick y b i eq.i x y breakf ] ; i = first non-equal index | |
It would probably be better to do case-sensitive compares anyway, as it would allow you to compare binaries. Character case needs code pages and such to work anyway when you have Unicode, or languages other than English. | |
Anton 19-Nov-2005 [1268] | View1.3.61 is out. http://www.rebol.net/builds/ |
BrianH 19-Nov-2005 [1269] | Anton, thanks for announcing, as I forgot to mention above that was the version I was testing with :) |
Oldes 23-Nov-2005 [1270x3] | Just uploaded rebcode for tracing 2 colored bitmaps (it's not perfect, I think it can be optimised) but at this moment I have what I needed.... |
do http://box.lebeda.ws/~hmm/rebol/projects/vectorize/latest/vectorize.r probe vectorize http://box.lebeda.ws/~hmm/rebol/projects/vectorize/latest/img41.gif | |
It's possible that some situation will not be handled, but I was already able to convert two alphabets from bitmap to vectors using it. | |
Rebolek 23-Nov-2005 [1273] | what is the result of vectorize function? draw dialect surely not |
Oldes 23-Nov-2005 [1274x2] | probe ctx-vectorize/to-pairs vectorize http://box.lebeda.ws/~hmm/rebol/projects/vectorize/latest/img41.gif |
I'm not using pair as there is no support for them in rebcode | |
Rebolek 23-Nov-2005 [1276] | to-pairs function returns some a lot of negative pair! , why is the image shifted? |
Oldes 23-Nov-2005 [1277x4] | because i use it to make font from the bitmap and there is the y axis counted from below, you may also aske why there is the innerLine (it's because to render the hole correctly there must be correct direction - it could be done in the rebcode, but I found it when I had the inner tracing done and don't want to do it again - so I just changed the "line" to "innerLine" and must fix it in the to-pairs function -> for outer shape I use append and for holes insert :) |
I should probably remove to to-pairs function from the vectorizer's context, and use it alone | |
here is example how to use it in real life: do http://box.lebeda.ws/~hmm/rebol/projects/font-tools/latest/test.r | |
It would be nice to have possibility to use embedded fonts in Rebol as it's possible with Flash. | |
Volker 25-Nov-2005 [1281] | http://www.complang.tuwien.ac.at/papers/ertl%26gregg04pact.ps.gz |
Oldes 25-Nov-2005 [1282] | I probably missed something, how can I read *.ps files? |
Volker 25-Nov-2005 [1283x2] | Click on them in linxu? Hmm, there is ghostscript for windows too somewhere. |
Mybe google has html in its cache, but i lost the search-page. | |
Oldes 25-Nov-2005 [1285] | What is the advantage of using *.ps files? Is it at least interesting reading? |
Volker 25-Nov-2005 [1286x2] | It was the interesting reading why i choosed it. did not realize the *.ps |
about building a native compiler from an interpeter. | |
Oldes 25-Nov-2005 [1288] | ech 10MB of download just to read a simple text file, I'm not going to read it today. |
Volker 25-Nov-2005 [1289] | abstract: http://csdl2.computer.org/persagen/DLAbsToc.jsp?resourcePath=/dl/proceedings/&toc=comp/proceedings/pact/2004/2229/00/2229toc.xml&DOI=10.1109/PACT.2004.10021 |
Rebolek 25-Nov-2005 [1290] | you can convert ps to pdf on http://www.ps2pdf.comfor free |
DideC 25-Nov-2005 [1291] | ...and it works well! |
Oldes 28-Nov-2005 [1292] | here is example of simple cells animation with custom rebcode's preprocessor --> do http://box.lebeda.ws/~hmm/rebol/projects/boids/latest/rc-cells-1.r |
Geomol 28-Nov-2005 [1293] | hehe funny! :-) |
Oldes 28-Nov-2005 [1294x3] | hm, but now I want to work with decimals as well and wonder if will be faster to use block to store the cell variables, or if I will use my own decimal format and binary structer as I'm using now |
how to write: [ 2 ** exponent ] in rebcode? | |
stupid question:) mul.d i i | |
Rebolek 28-Nov-2005 [1297] | mul.d i i is i ** 2 and not 2 ** i |
Geomol 28-Nov-2005 [1298] | 2 ** exponent: set a 2.0 log-e a mul.d a exponent exp a |
Rebolek 28-Nov-2005 [1299] | or you can use set a 0.693147180559945 to save one instruction |
Oldes 28-Nov-2005 [1300x4] | thanks, but kru, I will save instruction but will deal with rounding error: |
>> x: rebcode [exponent][set a 2.0 log-e a mul.d a exponent exp a return a] x 3.0 == 8.0 >> x: rebcode [exponent][mul.d exponent 0.693147180559945 exp exponent return exponent] x 3.0 == 7.99999999999999 | |
interesting, it looks it will be faster to use rebol blocks to store Rebol values instead of binary format I used in the cell example before (which was faster in the early rebcode versions) | |
do http://box.lebeda.ws/~hmm/rebol/projects/boids/latest/rc-cells-2.r <--- same like the version 1 but without the rebcode preprocessor using Rebol block to store cell variables instead of the binary format. | |
Henrik 28-Nov-2005 [1304] | how do you tell the speed difference? I can't see it.... |
Oldes 28-Nov-2005 [1305] | It's not in the script, I did local tests. |
Henrik 28-Nov-2005 [1306] | how great is the speed difference? |
Oldes 28-Nov-2005 [1307] | using rebol block is 3x faster |
Henrik 28-Nov-2005 [1308] | that's quite a lot... |
Oldes 28-Nov-2005 [1309] | how to get random number between 0 and 1? |
Rebolek 28-Nov-2005 [1310] | I generate random number from 0 to milion and divede it by milion |
older newer | first last |