World: r3wp
[Core] Discuss core issues
older newer | first last |
Graham 18-May-2008 [10545] | Actually maybe it was Terry that wrote this .. can't recall now. |
Oldes 19-May-2008 [10546] | Use Resource Hacker http://www.angusj.com/resourcehacker/to change the title and or icons. |
Robert 19-May-2008 [10547x2] | Is there a way to get MAX-INT from Rebol? |
I know it's 2 ** 31 - 1 but any other way? Is there an unsigned version as well? | |
Geomol 19-May-2008 [10549] | >> to integer! #7fffffff == 2147483647 No unsigned version directly. You might be able to make code, that can implement unsigned int. |
sqlab 19-May-2008 [10550] | Looks my solution for changing the name.) |
Graham 20-May-2008 [10551x2] | Google api client libraries ... http://code.google.com/apis/gdata/clientlibs.html |
No REBOL included of course | |
BrianH 20-May-2008 [10553] | Google is really specific about which languages it will support itself - they won't even let their employees use alternate languages for Google products. REBOL's niche is taken up by Python there. Nothing stopping you from cloning one of the official APIs for a third-party API though. |
Robert 24-May-2008 [10554] | Hi, how can I avoid to get back NONE for something like this: a: compose [ (if 0 > 1 ["b"]) ] I just want to get nothing back, like the parens were never there. |
Dockimbel 24-May-2008 [10555] | >> void: [ ] >> a: compose [ (either 0 > 1 ["b"][void]) ] == [ ] |
Robert 24-May-2008 [10556] | Ok... very tricky. ;-) |
Dockimbel 24-May-2008 [10557x2] | if you want to hide the "tricky part" : |
>> if*: func [cond body][either cond body [[ ]]] >> a: compose [ (if* 0 > 1 ["b"]) ] == [ ] | |
Henrik 24-May-2008 [10559] | >> a: compose [(either 0 > 1 ["b"][])] == [] |
[unknown: 5] 24-May-2008 [10560x2] | Does protect work inside an object's context? For example if i have a: context [b: 0] can I then protect 'b from being changed? |
I might be able to figure this out if I take a look at the protect-system. | |
ChristianE 24-May-2008 [10562] | In cases like this, Robert, I usually use somthing like >> pass: func [value] [any [value []]] which makes code somewhat readable >> a: compose [ (pass if 0 > 1 ["b"]) ] |
Dockimbel 24-May-2008 [10563] | Clean and simple solution. |
[unknown: 5] 24-May-2008 [10564] | a: compose [(pick [["b"][]] 0 > 1)] |
Graham 1-Jun-2008 [10565x2] | If I wish to compute a checksum on an image file, I can do this checksum read/binary %image.png but how do I get the same result when I have the image as image data ? eg. i: load %image.png and to compute the checksm on i ? |
guess I can't | |
Henrik 1-Jun-2008 [10567x2] | convert it to binary first |
or if you want to avoid loading the image twice: i: read/binary %image.png checksum i i: load i | |
Graham 1-Jun-2008 [10569] | Since I might be grabbing the image as jpg and then saving it to png, I guess I should save it to memory as binary and do the calculation that way. |
Will 1-Jun-2008 [10570x2] | I use these quite often: ifs: func [c b][either c [do b][""]] ;like if but return empty string ifb: func [c b][either c [do b][[]]] ;like if but return empty block |
my bad, thanks Dock, I can refactor to ifs: func [c b][either c b [""]] ;like if but return empty string ifb: func [c b][either c b [[]]] ;like if but return empty block so ifs is like your if* 8) | |
Josh 12-Jun-2008 [10572x2] | Which version of rebol allows for evaluation in paths? (i.e. block/(1+i): "hello" ) Or am I not remembering this correctly? |
Nevermind, I think I just had a typo in my code. :) | |
[unknown: 5] 14-Jun-2008 [10574x4] | What is the limitation on file size that REBOL 7.6 can handle? |
I'm assuming there must be a iimit that open/direct can't just mount any file size. I'm assuming that the limitation is roughly 2 Gigs. | |
I'm also assuming since a port/size is integer! that the file size can be no greater than 2099999999 bytes. | |
Since integers greater than that number cause errors. | |
[unknown: 5] 16-Jun-2008 [10578] | Ok, I checked for a file size limitation in REBOL but haven't found one. I noticed the documentation for open/direct for example says that /direct can be used for files of any size. I don't see how that can be if it is calculating the size as an integer and integer has a limitations. |
Geomol 16-Jun-2008 [10579] | Largest 32-bit signed int is 2 ** 31 - 1 = 2'147'483'647 If REBOL internally use 32-bit unsigned, it's 2 ** 32 - 1 = 4'294'967'295 If REBOL internally use 64-bit unsigned, it's 2 ** 64 - 1 ca. = 1.845E+19 |
[unknown: 5] 16-Jun-2008 [10580] | I'm actually running an experiment now. I'm going to write a file that will attempt to exceed those sizes. |
Geomol 16-Jun-2008 [10581x2] | :-) Be sure, you have enough HD space! |
The file system might have max-size for files. I remember something about 2 or 4GB for some file systems. | |
Henrik 16-Jun-2008 [10583] | FAT32 is the one with that limit. |
Anton 16-Jun-2008 [10584] | Yep, hit it today on FAT32 - 4GB file was produced. |
[unknown: 5] 16-Jun-2008 [10585x3] | I'm on NTFS. I'll post what I find out. |
currently still writing a file which is only at 668 Megs at the moment. | |
Anton, you created a 4GB file using REBOL or was reading one when you got the error? | |
Anton 16-Jun-2008 [10588] | Sorry, not using Rebol, but in Linux, creating a file in a FAT32 partition. |
[unknown: 5] 16-Jun-2008 [10589x3] | ahhh ok. |
I was curious because I'm interested in what happens when I hit 2099999999 size. | |
Actually a bit larger than that. | |
Anton 16-Jun-2008 [10592] | I don't know where you got that number from; If I remember correctly the first time you can get a problem with rebol file size is at 2 ^ 31 - 1 |
[unknown: 5] 16-Jun-2008 [10593] | Oh it was a generic range number based on a algorithm I was running. I expect the number to be the 32 bit signed number that John posted. |
Anton 16-Jun-2008 [10594] | Maybe it was 2 ^ 31 - your buffer size ? |
older newer | first last |