AltME groups: search
Help · search scripts · search articles · search mailing listresults summary
world | hits |
r4wp | 119 |
r3wp | 1313 |
total: | 1432 |
results window for this page: [start: 1301 end: 1400]
world-name: r3wp
Group: Parse ... Discussion of PARSE dialect [web-public] | ||
BrianH: 4-May-2011 | If you're going to make a better parse, it might be good to take into account the efforts that have already started to improve it in R3. The R3 improvements need a little work in some cases, but the thought that went into the process is quite valuable. [set end ...] or [copy end ...]: In R3, using any PARSE keyword (not just 'end) in a rule for other reasons triggers an error. >> parse [a] [set end skip] ** Script error: PARSE - command cannot be used as variable: end [any end] or [some end]: What Ladislav said. [opt end]: The point of the combination is [opt [end (do something)]]. [opt anything] is no more useless than [opt end]. Don't exclude something that has no effect just for that reason. Remember, [none] has no effect as well, but it's still valuable for making rules more readable. | |
Endo: 20-Dec-2011 | I'm using it to prepare data to bulk insert into a SQL Server table using BCP command line tool. I need to make some changes like /no-quote to not quote string values. Because there is no option in BCP to tell my data has quoted string values. | |
Group: !REBOL2 Releases ... Discuss 2.x releases [web-public] | ||
Henrik: 24-Aug-2008 | Has anyone tried Cyphre's my-http.r on REBOL/View 2.7.6? I get an error here: >> read http://www.rebol.net ** Script Error: querying has no value ** Where: halt-view ** Near: http-command: either querying ["HEAD"] ["GET"] | |
sqlab: 9-Sep-2008 | In the old days of pre-Command or View/beta I wrote an ODBC-Wrapper. | |
Graham: 9-Sep-2008 | you need R/command. | |
sqlab: 9-Sep-2008 | At the moment I have no access to that old pc and script. I takes a few days, but then you can get it. At least someone was even using it on Linux, as Command does not provide ODBC access there. | |
Carl: 28-Dec-2009 | Last year we sold very few View/Pro licenses (maybe 2?) People buy the SDK or Command. | |
Pekr: 28-Dec-2009 | The only thing left in /Command is - fastcgi, SSL, ODBC, mySQL? | |
BrianH: 28-Dec-2009 | Will, that "echo" calls a cmd.exe internal command on Windows. Might that be part of the delay? | |
amacleod: 28-Dec-2009 | I think someone has google mail working with rebol command | |
amacleod: 28-Dec-2009 | Not SDK command | |
Graham: 29-Dec-2009 | It's already in Sdk/command ... | |
Graham: 29-Dec-2009 | Carl hasn't mentioned anything about freeing Rebol command which still sells | |
amacleod: 29-Dec-2009 | I did not know I would have the need when I bought SDK so I did not get SDK/Command | |
Graham: 29-Dec-2009 | rebol command sdk | |
Graham: 29-Dec-2009 | Seeing how he has released a free rebol command which currently lists for $349. | |
Pekr: 29-Dec-2009 | BrianH: how can you write your own client to R3 Chat? Can you actually use its command set? I mean - create a gui, and "send" command like "n", "lm", etc. to console in the background? | |
Graham: 29-Dec-2009 | >> help run USAGE: RUN file /as suffix DESCRIPTION: Runs the system application associated with a file. RUN is a native value. ARGUMENTS: file -- The file to open (file, URL) or command to run (string). (Type: file url string) REFINEMENTS: /as suffix -- (Type: string file) >> run "screen.png" ** Script Error: Feature not available in this REBOL ** Near: run "screen.png" | |
BrianH: 1-Jan-2010 | No, the SDK isn't free. I'm not sure what extras /Command has yet - I haven't tried the final release yet, just test releases. Just got home. | |
BrianH: 2-Jan-2010 | The next version should have support for the links to the online docs right from the R2 command line, just like R3. | |
Graham: 2-Jan-2010 | Same failure under R/command | |
BrianH: 12-Jan-2010 | The SSL/TLS in 2.7.7 works exactly as well as it did in /Command in prior versions. The only change was licensing. | |
Graham: 16-Mar-2010 | There's a rebcmd with ssl that is part of rebol/command of course ... I was guessing Carl was keeping it that way. | |
Gregg: 24-Mar-2010 | I've thought about doing that as well Henrik, but by needs ended up being very static. I have also considered a test app that you could use to preview the result and then copy the command line, life effect-lab and font-lab. | |
TomBon: 7-Apr-2010 | is there any solution or idea for multiple feeding a running console app started via call/wait/input/output ? have tried a pass a open port but no luck. the console needs more than one command to work properly. the ideal solution would be to hold the console app permanently open, feed it via write-io or (something like this) and parse the output. any hint? | |
sqlab: 7-Apr-2010 | If your app runs under linux, you can use the telnet scheme to command the app. | |
Pekr: 15-Apr-2010 | is CLI connector done in REBOL? Or does it call some external command-line cross-db access tool and REBOL just parses the data? | |
Pekr: 15-Apr-2010 | Theoretically it could be done all in REBOL. E.g. SQLite has sqlite.exe, MS SQL has some executable for querying the db too. I just thought, that calling command line tool is going to be orders of magnitude slower, than ODBC access ... at least under Windows ... | |
GiuseppeC: 1-May-2010 | Sorry, I hava modified the command. Originally I needed reduce. | |
Maxim: 29-Jun-2010 | I just want rebviewpro.exe to be available as well as rebol.exe. the installer is a nuisance, why should /view require one while /core doesn't? I'd much rather have no install and have a mezz or native command I run in the console that does an "install" | |
BrianH: 29-Jun-2010 | We need to have a way to have the program not install and not bring up the desktop without command line parameters, from the same executable that will under different circumstances offer to install. It's one of the modes I mentioned. | |
Maxim: 29-Jun-2010 | the way I see it, the moment there is a rebol.r file in the same folder as the rebol.exe, no install should ever be required, whatever the rebol.r file contains. the rebol.r file should operate before the sandbox is activated. it needs access to the secure command, so it can prevent the sand box from ever starting. If it can be made that simple, then install-away all you want. :-D | |
BrianH: 29-Jun-2010 | It depends. If it has all of View, with the viewtop, I would call it /View (or /View/Pro with library support). If it has none of that I would call it /Face. If it has all of that plus /Command stuff, I would call it /Command/View. There are 3 graphics builds on Windows, license depending. | |
Maxim: 29-Jun-2010 | as a reboler, I don't want to write system specific and environment resolving code. my script should be able to ply itself to whatever system its installed on and still read/write its files in proper OS expected places. This is what we are talking about Andreas... viewtop specifically has nothing to do with this. this is for ALL scripts to be compliant. if I had a command which allowed me to build a system-compliant "application data path" then it would write stuff in ~/application/ on linux and whatever profile/app data/application path is being used by your flavour of windows. right now, I'd have to write a library which determines this and it probably will screw up on ubuntu, or Mac Or the latest windows. | |
AdrianS: 29-Jun-2010 | Maxim, see this about passing arguments to apps started by file association: http://stackoverflow.com/questions/444388/how-can-i-pass-command-line-arguments-via-file-association-in-vista-64 Re. shortcuts having arguments, yes they can - Vista shortcuts could as well, though. | |
Maxim: 29-Jun-2010 | and yes... you have to manually change the command-line arguments, but then the OS' editors break up in what I can't remember, I think rebol disapeared from the "installed applications" list, although the file association still worked. | |
GrahamC: 31-Dec-2010 | Some of the registry stuff is broken on R2/command .. hope they are fixed and not just enabled | |
BrianH: 4-Jan-2011 | Diffs from the old preliminary changes doc to the actual 2.7.8 release (that I know about): - No installer changes yet (my bad, I didn't have time to do them) - SINGLE? is LAST? instead - RESOLVE is a (slow) mezzanine for now, not native - Don't know about what the Command boot problem was or whether it was fixed - No HTTP fixes yet - No X fixes yet - ASSERT and APPLY are still mezzanine, and ASSERT is still rather bad - No FOREACH setword support yet - SET-ENV native (with limits) - Delay sound subtask creation (whatever that means) - RUN function uses 'shell access in SECURE - FIND and SELECT on objects - FUNCT /extern option, SPEED? and DT - Some fixes to bugs in RAMBO that I don't know since RAMBO is down | |
Dockimbel: 4-Jan-2011 | I hope that the "Command boot problem" will be fixed in 2.7.8, it was one of the biggest regression in 2.7.7 (IIRC, it was causing scripts encapped with a /Command kernel to crash on start). | |
Group: !REBOL3 Extensions ... REBOL 3 Extensions discussions [web-public] | ||
Maxim: 8-Nov-2010 | also make sure you ASSIGN the return value of the command, as it may be garbage collected otherwise. but depending on the rebol code, this might not be the issue... its just good practice. | |
Andreas: 9-Nov-2010 | Interesting. Seems to make a difference whether I run a script which imports the extension or import the extension from the command line. | |
Maxim: 9-Nov-2010 | same thing, command-line would last longer before a crash, but ultimately, it would still fail... only further down the execution. | |
Oldes: 10-Nov-2010 | When I have command like: test: command [str [string!]] And on C side I need a pointer to this string, how to get it? | |
BrianH: 11-Nov-2010 | REBOL doesn't have pointers, it has references, and it doesn't have addresses. So the only way you could legitimately get a pointer is to return it from a command. But you don't want to have any way to construct an illegitimate pointer in REBOL and pass it to a command because that would be a much worse security and stability problem than just having commands at all, and treating pointers as integers lets you do that. So there is the handle! type to store pointers. A handle! is an immediate value that is the size of a pointer, but that you can't convert directly to or from any other value, or even mold it to see its contents. When you return a pointer from a command you set the value to the handle! type. Then that handle! will be usable when passed back to other commands in the same extension, and maybe even when passed to other extensions, depending on address space issues. Handles are also used to store function pointers in R3, and other opaque system values like library addresses. | |
Maxim: 11-Nov-2010 | what you can do, is wrap your command within a function in the extension's module and expose that function. this allows you to control the return type of the command better and handle it within the comfort of rebol. | |
ChristianE: 30-Nov-2010 | Not sure If that's what you're after, but anyways ... ---- REBOL side ---- convert: command [value [number!] unit [word!]] ---- C side ---- if (unit == RL_MAP_WORD("ppi")) { // do something } elseif (unit == RL_MAP_WORD("ppcm")) { // do some other thing } Do you get the idea? >> convert 18 'ppi >> convert 20 'ppcm | |
Oldes: 30-Nov-2010 | the problem with the above is, that in A110: words: [pixels-per-centimeter-resolution] export testword: command ['wrd [lit-word!]] ... case testword: { int unit = RL_MAP_WORD("pixels-per-centimeter-resolution"); RL->print("int: %d\n", unit); } prints int: 1399 = something what I don't expect :) | |
Oldes: 1-Dec-2010 | hm.. I think I understand how it's supposed to work now, but it looks it's just a temp solution. Here is the init part for graphics: words: [ ;gui-metric screen-size border-size border-fixed title-size work-origin work-size ] ;temp hack - will be removed later init-words: command [ words [block!] ] init-words words | |
Oldes: 1-Dec-2010 | But I think that the easiest way is to define the enum constants during the extension init like: export PIXELS-PER-INCH-RESOLUTION: 1 export PIXELS-PER-CENTIMETER-RESOLUTION: 2 protect/words [ PIXELS-PER-INCH-RESOLUTION PIXELS-PER-CENTIMETER-RESOLUTION ] and then just use: SomeFunc PIXELS-PER-CENTIMETER-RESOLUTION or SomeFunc 1 with the correct int bound check in the command so only valid numbers are processed. I really like what is possible with R3.. I should start real coding in it soon. | |
Oldes: 1-Dec-2010 | hm.. the protect above is not required anyway as long as there is the validity check in the command. | |
Oldes: 6-Dec-2010 | But I would like to know, if I can just change the provided variable without returning it back as a command result. (as it's possible with series). | |
Cyphre: 6-Dec-2010 | Brian, I'm not sure about that. IIRC the value slot of double passed as command! arg is just on the 'function command frame' at the time the command! is executed so it is a copy of the real value you are refering to. | |
Cyphre: 6-Dec-2010 | because the arg passed to the command function is just a copy of the real value | |
Cyphre: 6-Dec-2010 | Brian: actually the values on the 'command frame' are 'free value slots' as they are not part of any series...they are just in plain fixed size array. But this is probably just playing with words ;) | |
BrianH: 6-Dec-2010 | They are in the command frame :) | |
Oldes: 6-Dec-2010 | Next question.. when I have: case CMD_MagickGetImageColors: { if(current_wand) { RXA_INT32(frm, 1) = MagickGetImageColors( current_wand); RXA_TYPE(frm, 1) = RXT_INTEGER; } return RXR_VALUE; } While compilation using GCC I get this warning: use of cast expressions as lvalues is deprecated The command is working, just would like to know if I can improve it somehow. The function is defined as: size_t MagickGetImageColors(MagickWand *wand) | |
Oldes: 14-Dec-2010 | That's possible, but I was more thinking how to do it on the C side and not end with wrapper for each extension command. | |
Andreas: 14-Dec-2010 | How about defining the command with `command [arg [integer! decimal!]]` and then detecting in C when you where passed an int and converting it to a float? | |
Oldes: 14-Dec-2010 | and the command can be just [number!] | |
Oldes: 14-Dec-2010 | Do you think it's better to export all commands in flat structure like: export System_GetNumDrivers: command[] export System_GetDriverInfo: command[id [integer!]] ... Or rather close them to contexts like: export system: context [ GetNumDrivers: command[] GetDriverInfo: command[id [integer!]] ... ] | |
Kaj: 17-Dec-2010 | Is it safe to have a command without arguments return a value? Is there a return slot reserved anyway in the arguments frame? | |
Kaj: 22-Dec-2010 | Interesting, but that's a very empty example. Can you try with command parameters? | |
Andreas: 22-Dec-2010 | export cmds: context [cmd01: command [] cmd02: ...] | |
Kaj: 22-Dec-2010 | It also bombs out for me when the fifteenth context slot is such an empty command | |
Oldes: 26-Dec-2010 | I'm experimenting with image! as a command agrument and found this strange behaviour: I have: img-echo: command [img [image!] ] In RX_Call I use just: return RXR_VALUE; And then when I call the img-echo I get image, but with index at the tail so it looks like: >> i: img-echo img == make image! [50x20 #{ }] >> index? i == 1001 Is this normal? How I can set the index on the C side? | |
Oldes: 27-Dec-2010 | I've located where is the problem.. it's returning the image at the tail if the command is used in exported context! | |
Oldes: 27-Dec-2010 | Correction... it returns image index at tail when there is any exported context.. the command can be out of the context. | |
Oldes: 17-Jan-2011 | I would like to make a dialect for making extensions... so far I parsed spec for MagickWand and PixelWand API - https://github.com/Oldes/R3-extension-iMagick But I have a question... in some cases, like in this one: MagickGetImageChannelRange: [ "Gets the range for one or more image channels" wand "MagickWand *" "the magick wand." channel "ChannelType" "the image channel(s)." minima "double *" {The minimum pixel value for the specified channel(s).} maxima "double *" {The maximum pixel value for the specified channel(s).} return: "MagickBooleanType" ] The command should return block [minima maxima] or FALSE... any idea how to specify it in the dialect? | |
Oldes: 17-Jan-2011 | Just to make clear what's the issue.. for above example, the extension command should looks like: MagickGetImageChannelRange: command [ "Gets the range for one or more image channels" wand [handle!] "the magick wand." channel [integer!] "the image channel(s)." ] The minima, maxima are just pointers to values which are used to return the result, which I must convert to REBOL block. | |
Maxim: 25-Jan-2011 | Oldes, AFAIK its normal... in C we always have access to the full string. we use RL_SERIES to figure out the portion of the string which is used by a specific Series reference. so basically if you call: a: [1 2 3] b: next a and use A or B in the command, you get the same string (logically, not physically), but with only the RL_SERIES and RXA_INDEX() which are set to different values. | |
Oldes: 25-Jan-2011 | I wonder if we can somehow solve that you must provide handle in most cases for each command.. In Kaj'scurl it's the SESSION handle, in iMagick it's the WAND handle... etc. what we can expect from the devices? | |
Maxim: 25-Jan-2011 | which is why I built this structure when I know I am going to be using the data outside of my command block... typedef struct ht_value HTVAL; struct ht_value { RXIARG value; u32 type; }; | |
BrianH: 26-Jan-2011 | I'm sorry that you got used to loading extensions without needing to turn off the security restrictions in R3. If it helps you to know, you can also specify modules to import on the command line, or put your platform-specific delayed module loads in %rebol.r. | |
Oldes: 16-Feb-2011 | What is error: ** Script error: invalid command format (extension function) ? | |
Oldes: 16-Feb-2011 | hmm... it's possible to use max 7 args for command. | |
BrianH: 17-Feb-2011 | The command call process does a lot of marshalling to get the values into the native code. You only have limited access to the original values in REBOL memory. | |
BrianH: 28-Sep-2011 | Thanks! I've been using R2/Command to do the database access and R3 to process the data. All in the same script, using a trick I'll post to the Windows group. | |
Group: !REBOL3 GUI ... [web-public] | ||
Aloysius: 11-Dec-2010 | running the same script from command console: "r3.exe testgui.r3" works just fine. It opens a new console window with the same output " REBOL 3.0 A110 2-Nov-2010/3:56:20 handler added" and another window showing the button | |
Aloysius: 11-Dec-2010 | In Scite, I configured the command Go (F5) as: command.go.$(file.patterns.rebol)=c:\Users\awi\Documents\rebol\r3.exe "$(FilePath)" so nothing different here | |
Edgar: 12-Dec-2010 | Add this to your configuration, and you will be able to use Ctrl-5 to run rebol3. Change the path as needed. command.name.5.$(file.patterns.rebol)=RunRebol3File command.5.$(file.patterns.rebol)="C:\usr\local\rebol3\r3.exe" "$(FilePath)" command.subsystem.5.*=2 command.is.filter.5=1 | |
Cyphre: 8-Mar-2011 | There are multiple ways how to doit....But If you are going to be style author you just need to know the syntax used in stylize command, nothing more ;) | |
Cyphre: 19-Mar-2011 | Jocko, rgearding the: circle: [pair! | number! | number!] definition. This is correct as the definition doesn't describe the exact syntax of the command but it works more like the rules used by DELECT. So in this case the CIRCLE command can be used only in these combination: circle pair! number! circle pair! number! number! which corresponds to the syntax described here: http://www.rebol.com/r3/docs/view/draw-curves.html#section-3 Ofcourse, now when the float pair! has been implemented we could extend the syntax for another pair to: circle: [pair! | pair! | number! | number!] to allow also: circle pair! pair! but this change needs to be reflected also in the to-draw function and dialect-draw definition object used by DELECT in the R3GUI. I'll add this enhancement so it will be available in the next RMA release for you. Also note, the current DRAW dialect (implemented by the preprocessor mezzanines) is trying to reflect only the R3 draw reference documentation (in the link above) syntax which has been designed at the time the float pair! was not available. The review of the syntax is planned in the future. | |
Group: !REBOL3 Host Kit ... [web-public] | ||
Pekr: 19-Oct-2010 | What does it mean?: - Embedded GOB containers in text - Gob - Renders GOB embedded in text I can't imagine, how this stuff works, and is organised. However - i am buying a book on text typography and layout, but so far from what I have read, you basically divide page into columns or boxes section, you can link them, those columns/rows have those typical margins, origings, etc. set, but we are talking DTP tools here :-) Are we getting something similar here?: It is possible to have multiple paragraphs defined in one Rich Text block. Paragraphs are positioned one ofter another vertically. Vertical space between pargraphs is defined by PARA/INDENT/Y values. Use COLUMNS command(see below) to define how many paragraph columns should be used for paragraph layout. ... some wireframe model showing the terms on the image would be usefull ... but maybe others will understand, what's your idea ... | |
Maxim: 26-Oct-2010 | its just a command-prompt function. | |
Andreas: 4-Nov-2010 | No, I'm just saying that for those set of command line flags, your linker behaves strange. | |
ssolie: 4-Nov-2010 | I'm not seeing my Dev_Event device's RDC_QUIT vector being called when I exit r3 with a 'q' from the command line. I do see the RDC_INIT vector being called. | |
ssolie: 7-Nov-2010 | Amiga has CTRL-D which means interrupt script and CTRL-C which means interrupt command (from the shell). | |
Henrik: 14-Nov-2010 | henrik:R3/Lobby>> help sh: xdg-open: command not found sh: x-www-browser: command not found ** Access error: external process failed: "Undefined error: 0" ** Where: browse parse try either either forever command-loop make context do catch either either -apply- do try chat ** Near: browse help-url Seems these are broken in A110 for OSX. | |
Henrik: 14-Nov-2010 | >> browse http://www.google.com sh: xdg-open: command not found sh: x-www-browser: command not found ** Access error: external process failed: "Undefined error: 0" ** Where: browse ** Near: browse http://www.google.com | |
ChristianE: 15-Nov-2010 | I may be missing something fundamental, but 1) am I supposed to be able to build a A110 r3.exe from the sources at github.com/carls/R3A110 on Windows with MinGW and gcc? The gcc makefile differs in a lot of places from earlier versions (A109 and below) and even seems to generate some .so's instead of .dll's. It fails for me with gcc -c -O1 -D_FILE_OFFSET_BITS=64 -Wno-pointer-sign -I ../src/include/ -o obj/host-main.o ../src/os/host-main.c cc1.exe: error: unrecognized command line option "-Wno-pointer-sign" before doing anything. 2) given that I somehow manage to build it and include my own changes in a clone of that repo, what happens to them if once there's a A111 repo? I don't see how a A110 repo could be turned into a A111 repo - I would have expected to have a R3 repo on github and to have commits tagged as constituting a alpha version like A110, A110 etc. | |
Oldes: 2-Jan-2011 | For example the CMD_TEXT_TEXT command is called on each mouse move event (redraw). | |
Oldes: 4-Jan-2011 | Hm.. my mistake... probably commented the SHOW command when i was testing ... so I can confirm that for redraw on each mouse move I get same CPU usage.. pretty high. So the problem will be elsewhere. Sorry for that.. I should take a break... here is my test file: https://github.com/Oldes/R3A110/blob/master/tests/text-test4.r3 | |
BrianH: 14-Feb-2011 | Using the Cygwin compilers turned out to be unnecessary, so I can get away with just the Cygwin base install plus make for the NDK, TDD-GCC for the host kit, and Git for Windows for the Git support. Only one set of compilers per target platform, but 3 mostly duplicated sets of general command line tools. | |
Group: Core ... Discuss core issues [web-public] | ||
PeterWood: 20-Mar-2011 | First I ran a small command line pgm: | |
PeterWood: 20-Mar-2011 | This is the console output from the command line pgm: C:\REBOLServicesTest>cr )haracter 13 is enclosed in the parentheses ( I then checked that the command line pgm could be successfully called with the following two lines of Ruby: puts %x{cr} print %x{cr}.dump Which gave the following output: C:\REBOLServicesTest>ruby call_test.rb )haracter 13 is enclosed in the parentheses ( Character 13 is enclosed in the parentheses (\r) I then called the command line pgm from a REBOL Console session: >> call/console "cr" Character 13 is enclosed in the parentheses ( )== 0 >> print to-binary {Character 13 is enclosed in the parentheses ( { )} #{ 43686172616374657220313320697320656E636C6F73656420696E2074686520 706172656E74686573657320280A29 } >> buffer: make string! 256 == "" >> call/output "cr" buffer == 0 >> probe buffer Character 13 is enclosed in the parentheses (^/) == "Character 13 is enclosed in the parentheses (^/)" >> print to-binary buffer #{ 43686172616374657220313320697320656E636C6F73656420696E2074686520 706172656E74686573657320280A29 } As you can see both call/console and call/output turned the 0x0D into a 0x0A. | |
PeterWood: 1-Apr-2011 | If you only need to encrypt data at a single source, you could easily call a command line tool such as OpenSSL to perform the encryption for you. (It could well be quicker than REBOL too). | |
Ashley: 11-Apr-2011 | OK, this is freaky: >> system/version == 2.7.8.2.5 >> a: list-env == [ "TERM_PROGRAM" "Apple_Terminal" "TERM" "xterm-color" "SHELL" "/bin/bash" "TMPDIR" "/var/folders/6O/6OnXy9XG... >> help a A is a block of value: [ "TERM_PROGRAM" "Apple_Terminal" "TERM" "xterm-color" "SHELL" "/bin/bash" "TMPDIR" "/var/folders/6O/6OnXy9XGEjiDp3wDqfCJo++++TI/-Tmp-/" "Apple_PubSub_Socket_Render" "/tmp/launch-BrITkG/Render" "TERM_PROGRAM_VERSION" "273.1" "USER" "Ash" "COMMAND_MODE" "legacy" "SSH_AUTH_SOCK" "/tmp/launch-HlnoPI/Listeners" "__CF_USER_TEXT_ENCODING" "0x1F5:0:0" "PATH" {/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin} "PWD" "/Users/Ash" "LANG" "en_AU.UTF-8" "SHLVL" "1" "HOME" "/Users/Ash" "LOGNAME" "Ash" "DISPLAY" "/tmp/launch-U0Gaqw/org.x:0" "_" "/Users/Ash/REBOL/rebol" ] >> length? a == 18 >> select a "USER" == "Ash" >> select a "HOME" == none | |
Group: !REBOL3 Proposals ... For discussion of feature proposals [web-public] | ||
PatrickP61: 1-Jan-2011 | I would like to see some support for automatic logging of events. Rebol currently has two "hooks" to allow "Front-end" code to execute automatically in the REBOL.r and USER.r files. I would like to see another "hook" to allow "Back-end" code to execute automatically whenever Rebol stops its current evaluations for any reason such as encountering the HALT, QUIT, or any error which causes Rebol to stop evaluation. This could allow for some kind of automatic logging of QUIT, HALT or ERROR as well as capturing the error messages. It would be nice to allow capturing of any other information such as the script name, computer name, current timestamp, and where in the script the evaluation stopped, and how it stopped. I would use this to log all of my scripts that is invoked (put the code in REBOL.r file) and then the termination conditions defined so they could be triggered automatically. With such a function, I could even have certain selected scripts send an automatic SMS messages to my phone if certain scripts errored out etc. I'd like to propose a new function called WHEN that can be used to trigger code at a terminating event. WHEN block /all For any specified terminating condition, evaluates what follows it. Arguments: block [block!] - Block of terminating events (conditions followed by values) Refinements: /all - Evaluate all terminating conditions (do not stop at first true terminating condition) The WHEN command would be used to define code to be evaluated whenever a termination condition of any kind occurred in which continued evaluation will stop. Examples: WHEN/ALL [ HALT? [ print "This script will HALT now" ] ; code to be evaluated before the HALT is evaluated QUIT? [ print "This script will QUIT now" ] ; code to evaluate befoe the QUIT is evaluated ERR? [ print "An error was discovered" ] ;code to evaluate after an error is captured, but before the message is printed END? [ print "Script about to end" if now/time > 23:00:00 print "Stopped after 11 pm" ] ; code to evaluate whenever the current evaluation has stopped for any reason ] Note: HALT?, QUIT?, ERR?, END? are all logic values which become true depending upon how evaluations will be stopped. END? will always be true and one of the other terminating conditions will always be true. What do you think? | |
BrianH: 31-Jan-2011 | Please check if an object can be used by extension code to resolve the case aliases. I don't really see how they could if the words are translated to numbers at command call time, but that might be a limit of my imagination. | |
Group: !REBOL3 Parse ... REBOL3 Parse [web-public] | ||
Steeve: 14-Jan-2011 | Well, it's worst, you can't exit from an INTO command with ACCEPT or BREAK |
1301 / 1432 | 1 | 2 | 3 | 4 | 5 | ... | 11 | 12 | 13 | [14] | 15 |