AltME groups: search
Help · search scripts · search articles · search mailing listresults summary
world | hits |
r4wp | 917 |
r3wp | 9345 |
total: | 10262 |
results window for this page: [start: 2201 end: 2300]
world-name: r3wp
Group: Core ... Discuss core issues [web-public] | ||
JaimeVargas: 7-Apr-2005 | I hope this is useful for someone REBOL [] rest: func [s [series!]][skip s 1] define-object: func [ spec [block!] /local arg-spec ctx-spec object-name constructor-name predicate-name attributes spec-rule type-spec continue? w ][ arg-names: copy [] continue?: [none] ;used to stop parsing name-rule: [set w word! (insert tail arg-names w)] type-rule: [set w word! (unless datatype? attempt [get w] [continue?: [end skip]])] spec-rule: [name-rule some [name-rule opt [into [some [type-rule continue?]]]]] if any [ not parse spec spec-rule arg-names <> unique arg-names ][ make error! "invalid spec" ] object-name: to-string first arg-names constructor-name: to-word join 'make- object-name predicate-name: to-word join first arg-names '? attributes: rest arg-names arg-spec: copy [] foreach itm attributes [ insert tail arg-spec reduce [ to-word join itm '-value either block? w: select spec itm [w][[any-type!]] ] ] ctx-spec: copy [] arg-names: extract arg-spec 2 1 repeat i length? attributes [ insert tail ctx-spec reduce [to-set-word attributes/:i to-get-word arg-names/:i] ] ;create constructor function set constructor-name make function! compose [(reform ["Makes a new" uppercase object-name "object with attributes" mold attributes]) (arg-spec)] compose/only [make object! (ctx-spec)] ;body ;create predicate function set predicate-name make function! compose [(reform ["Determines if value is a" uppercase object-name "object"]) value [object!] /local types] compose/deep/only [ either (attributes) = rest first value [ foreach itm (attributes) [ unless any [ [any-type!] = types: select (arg-spec) to-word join itm '-value find types type?/word value/:itm ][return false] ] true ][ false ] ] ] | |
JaimeVargas: 7-Apr-2005 | If anyone ever wanted multi-methods or function overload in rebol here is the answer. Enjoy ;-) REBOL [] define-method: func [ 'name [word!] spec [block!] locals [block!] code [block!] /local w type-rule spec-rule continue? register-name methods-name ][ ;; first validate the spec continue?: [none] ;used to stop parsing type-rule: [set w word! (unless datatype? attempt [get w] [continue?: [end skip]])] spec-rule: [some [word! into [type-rule continue?]]] unless parse spec spec-rule [make error! "invalid spec"] register-name: to-word join :name '-register methods-name: to-word join :name '-methods? unless value? name [ context [ dispatch-table: copy [] spec-fingerprint: func [spec [block!] /local types][ types: copy [] foreach itm extract/index spec 2 2 [insert tail types itm/1 ] types ] values-fingerprint: func [values [block!] /local types][ types: copy [] foreach v values [insert tail types type?/word v] types ] retrieve-func: func [values [block!]][select/only dispatch-table values-fingerprint values] set :name func [values [block!]][ do compose [(retrieve-func values) (values)] ] set :register-name func [spec code /local fingerprint pos][ fingerprint: spec-fingerprint spec either found? pos: find/only dispatch-table fingerprint [ poke dispatch-table 1 + index? pos function spec locals code ][ insert tail dispatch-table reduce [fingerprint function spec locals code] ] ] set :methods-name does [probe dispatch-table] ] ] do reduce [register-name spec code] ] define-method f [x [integer!]] [] [x + 1] define-method f [s [block!]] [] [attempt [pick s 2]] define-method f [x [decimal!]] [] [sine x] f[5] == 6 f[[one two three]] == two f[90.0] == 1.0 | |
Louis: 11-Apr-2005 | Several scripts I have been using for several years to ftp files to our web server are not working now. I get no error message; the script just sits there. But FTPGadget still works. I phoned our isp and he can't see anything wrong. He can ftp to the server. What could be causing this problem with my scripts? | |
Vincent: 12-Apr-2005 | Ingo: on the 'system port, no official doc. Some info: rebolist thread (rebol.org) : http://www.rebol.org/cgi-bin/cgiwrap/rebol/ml-display-thread.r?m=rmlMYFJ 'signal demo script : http://www.rebol.org/cgi-bin/cgiwrap/rebol/ml-display-thread.r?m=rmlNFFJ drag-and-drop demo script: http://www.rebol.org/cgi-bin/cgiwrap/rebol/view-script.r?script=sys-port-drag-accept.r systray demo script: http://compkarori.com/vanilla/display/System+Tray+Functionality It's different for each OS. For MS-WIn, there is: get-modes system/ports/system 'system-modes ;== [window winmsg tray endian] where: 'window : REBOL console window handle, 'winmsg : OS message block, 'tray : systray definition block 'endian : CPU byte order ('big or 'little) For Linux: get-modes system/ports/system 'system-modes ;== [signal read-fd write-fd except-fd signal-names endian] | |
MichaelB: 15-Apr-2005 | Could someone just show me how to get the 'unset? function return true ?! Maybe I'm a bit stupid, but I simply don't get it working. Isn't really important, but should still work. e.g. unset 'a bl: [a] unset? 'a unset? first bl ????? shouldn't this return true ????? | |
Volker: 15-Apr-2005 | probe unset? () probe unset? get/any 'hey-what? | |
Vincent: 15-Apr-2005 | MichaelB: unset? 'a <=> is the word 'a an unset! value -> no it's a word! value unset? first bl <=> is the first element of bl an unset! value -> no it's a word! value to know if a word as a value: value? 'word value? 'a == false but unset? () == true ; paren! are auto-evaluated, empty paren! -> unset! unset? print 2 == true ; 'print returns no value -> unset! unset? get/any 'a == true ; but as "a" is undefined, unset? a -> error! unset? unset 'a == true ; 'unset returns unset! 'unset? -> _value_'s datatype! = unset! unset! is for absence of value too: my-func [an-opt-arg [integer! unset!]][...] | |
MichaelB: 15-Apr-2005 | - thank you for the answers, I knew there is something like that, just couldn't figure it out any more - actually I tried the unset? get .. version, but of course without the any refinement ... so couldn't work - I didn't know (or forgot) about the optional value possibility, good to know thanks again :-) | |
Tomc: 20-Apr-2005 | when your compare func returns -1 0 1 instead of a bool you get stable sorts | |
Ammon: 20-Apr-2005 | Your /compare func is returning a boolean value because '< returns a boolean value. If you have it return -1 0 1 then you get a stable sort. | |
sqlab: 27-Apr-2005 | Hi Claude, do you want to get the names of the columns? You do not get them by default. If you want just the names of the columns of a table, you should do like this insert stm ['columns "filexxx"] foreach column copy stm [probe column] look at sdk/doc/database.html#section-4.2 But beware, Rebol/Command does not support all datatypes, so maybe you will get some problems. Also depending how strict/relaxed your db system is "filexxx" should be written "FILEXXX" or as a fully qualified name. So better check with insert stm ['tables] what your db system expects. If you write a program, it is recommended, to name every column you want to get in your result set. Then you know the names too . | |
Micha: 28-Apr-2005 | handler: func [port action arg /local cmd send ping] [ switch action [ init [print "init" set-modes port [timeout: 00:05:00]] adress [print arg ] open [ping: to-integer (0:05:00 - get-modes port 'timeout )* 1000 ] close [print "close" close port] ] ] check: func [ p h] [ open/direct/binary/async join tcp:// [ p ":" h ] :handler ] check 219.147.198.195 1080 halt | |
Micha: 28-Apr-2005 | handler: func [port action arg /local ping] [ switch action [ init [print "init" set-modes port [timeout: 00:05:00]] adress [print arg ] open [print "open" ping: to-integer (0:05:00 - get-modes port 'timeout )* 1000 ] close [print "close" close port] ] ] check: func [ p h] [ port: open/direct/binary/async join tcp:// [ p ":" h ] :handler ] check 219.147.198.195 1080 | |
Anton: 28-Apr-2005 | gm: func [port][reform ["timeout:" get-modes port 'timeout]] handler: func [port action arg /local cmd send time] [ time: now/time/precise switch action [ init [ print [time gm port "--- init"] set-modes port [timeout: 0:00:05] ; five seconds ] address [print [time gm port "--- address lookup: " arg]] open [print [time gm port "--- open:" now/precise]] close [print [time gm port "--- close"] close port] error [print [time gm port "-- error:" mold disarm :arg] close port] ] ] check: func [p h][ open/direct/binary/async join tcp:// [ p ":" h ] :handler ] check 219.147.198.195 1080 | |
Micha: 28-Apr-2005 | handler: func [port ] [ ping: to-integer (0:00:30 - get-modes port 'timeout )* 1000 print [ "open" port/remote-ip port/remote-port "ping:" ping ] insert port join #{0401} [debase/base skip to-hex 80 4 16 to-binary 193.238.73.117 #{00} ] ] port: make port! tcp://219.147.198.195:1080 set-modes port [timeout: 00:01:00] port/awake: :handler insert tail system/ports/wait-list port open/binary port | |
Micha: 30-Apr-2005 | rebol [] conn: make port! tcp://:80 black-lista: [ 69.64.51.223 194.69.207.145 80.252.0.145 194.69.207.165 217.73.17.115] adns: open/no-wait make port! dns:///async adns/awake: func [port /local dat][ data: copy port print data false ] insert tail system/ports/wait-list adns heandler: func [ port /local data dns ] [ print "new connetion" serwer: first port client: make port! tcp://222.76.73.113:1080 serwer/sub-port: client client/sub-port: serwer set-modes client [no-wait: true timeout: 00:01:00] set-modes serwer [no-wait: true ] wait serwer data: copy serwer dns: to-tuple copy/part skip to-binary data 4 4 insert adns dns ;print dns name either find black-lista dns [ close serwer print "firtled" print read join dns:// dns ] [ insert serwer join #{005A} [debase/base skip to-hex serwer/port-id 4 16 to-binary dns ] insert tail system/ports/timeout-list client open/binary client ping: to-integer (0:01:00 - get-modes client 'timeout )* 1000 print [ "open" ping ] insert client data wait client data: copy client client/awake: :response serwer/awake: :request insert tail system/ports/wait-list client insert tail system/ports/wait-list serwer ] false ] request: func [ port /local data ] [ data: make string! 10000 read-io port data 10000 either data <> {} [ insert port/sub-port data ] [ close port remove find system/ports/wait-list port port print "close connetion serwer" print length? system/ports/wait-list ] halt] response: func [ port /local data ] [ data: make string! 10000 read-io port data 10000 either data <> {} [ insert port/sub-port data ] [ close port remove find system/ports/wait-list port port print "close connetion client" print length? system/ports/wait-list ] halt] conn/awake: :heandler set-modes conn [no-wait: false] insert tail system/ports/wait-list conn open/direct/binary conn print "proxy" halt | |
Micha: 4-May-2005 | how to use function parse , in order to to get the "city" , "stateProw" of ,"country" , ?? | |
Brock: 4-May-2005 | ;Micha, this should do the trick, you will be returned three variables, city, stateprov, and country get-stateprov: [thru "Stateprov: " copy stateprov to "^/" to end] get-country: [thru "country: " copy country to "^/" to end] get-city: [thru "City: " copy city to "^/" to end] parse test [get-stateprov] parse test [get-country] parse test [get-city] | |
Brock: 4-May-2005 | ; actually this is better.... get-city: [thru "City: " copy city to "^/"] get-stateprov: [thru "Stateprov: " copy stateprov to "^/"] get-country: [thru "country: " copy country to "^/" to end] parse test [get-city get-stateprov get-country] | |
Brock: 4-May-2005 | there is probably a better way to skip the variable number of spaces following the labels you are searching for, but haven't any experience with parse for this yet. With what I have provided you may be able to get the rest to work . I believe you can use 'any to skip multiple or no occurences of a parse rule | |
Brock: 4-May-2005 | in the parse rules get-city, get-stateprov; get-country, you can remove all of the spaces in the thru strings ie, "City: " can be just "City:". Parse takes care of the spaces between the words. | |
Brock: 4-May-2005 | show: func [ d /local alpha ][ get-city: [thru "City:" copy city to "^/"] get-stateprov: [thru "Stateprov:" copy stateprov to "^/"] get-country: [thru "country:" copy country to "^/" to end] parse d [get-city get-stateprov get-country] print [ "City: " a ] print [ "StateProv: " b ] print [ "Country: " c ] ] | |
Brock: 4-May-2005 | If you didn't know the order of the data being provided to you then you could generalize the code even further... here are the two lines that would change.... get-country: [thru "country:" copy country to "^/"] ; remove "to end" parse d [any [get-city get-stateprov get-country] to end] ; added 'any block and "to end" | |
Brock: 4-May-2005 | ;here's a working show... but didn't easily come across a solution to allow for an unkown order of items to find show: func [ d /local alpha ][ get-city: [thru "City:" copy city to "^/"] get-stateprov: [thru "Stateprov:" copy stateprov to "^/"] get-country: [thru "country:" copy country to "^/"] parse d [get-city get-stateprov get-country to end] print [ "City:" tab trim city newline "Stateprov:" tab trim stateprov newline "Country:" tab trim country newline ] ] | |
Janeks: 10-May-2005 | O'k. My mistake are offen do not tell what is my target. So it is to get working status bar in a layout. As I understood it is possible by read-thru. | |
Janeks: 10-May-2005 | Thanks! I am getting following parameters of myProgr: 3650 8000 7430 8000 9950 8000 13730 8000 15335 8000 19115 8000 22975 8000 26755 8000 30695 8000 34475 8000 38255 8000 42195 8000 46055 8000 49835 8000 53695 8000 55197 8000 55197 8000 How then to calculate data for progress bar ( decimal from 0 to 1 )? Or how to get total bytes? | |
Volker: 12-May-2005 | i like this little function and cant find a good name. your: func [offset value] [ if value [value/:offset] ] usage: your 'facet get-style 'field its sometimes more readable IMHO than putting the interesting word far at the end of line. but i find no good name.. any suggestions? | |
Sunanda: 12-May-2005 | foreach y x [print [y get y]] | |
Sunanda: 12-May-2005 | ... so the missing ??getvalue?? is just get | |
Robert: 29-May-2005 | debugging: IIRC I once asked this question already but can't remember the answer. Is it possible from inside a function to get the set-word this code is bound to? I would like to be able to print the set-word for debugging call-traces. | |
ChristianE: 1-Jun-2005 | This probably is a silly question, but ... What is the benefit of DO GET IN OBJECT WORD over just writing OBJECT/WORD ? I see this a lot in VIEW source (e.g. in DO-FACE) and related guru sources. I really don't see the point of doing so, be there *must* be a reason. Anyone willing to educate me? Is this a path evaluation issue? | |
ChristianE: 1-Jun-2005 | Oh, sorry, typo here: should have read DO GET IN OBJECT 'WORD - it's LIT-WORD!, actually. Of course, there *are* differences, e.g. OBJECT/WORD doesn't throw an error if WORD is unset. But I'm uncertain on the exact reason why that idiom is used. | |
ChristianE: 1-Jun-2005 | Still don't get it. Both do-face: func [face value][do get in face 'action face either value [value] [face/data]] do-face: func [face value][face/action face either value [value] [face/data]] seem to work. | |
JaimeVargas: 1-Jun-2005 | o1: context [ init: [print "Init code for o1"] eval: [print "Eval code for o1"] end: [print "End code for o1"] ] o2: context [ init: [print "Init code for o2"] eval: [print "Eval code for o2"] ] eval-obj: func [obj][ do get in obj 'init do get in obj 'eval do get in obj 'end ] eval-obj o1 eval-obj o2 | |
BrianH: 1-Jun-2005 | Plus, the behavior of object/word depends upon what datatype the word is set to and (for some datatypes) which version of REBOL you are running. If WORD is set to a block, OBJECT/WORD is the same as GET IN OBJECT 'WORD, while if WORD is set to a function, or sometimes a path or paren, it means DO GET IN OBJECT 'WORD. By spelling out what you want to do, you won't be as tied to variances in REBOL path evaluation and your code can be more general. | |
Gabriele: 2-Jun-2005 | The real reason, most of the times, is what Brian says above: if you want to get a function value instead of evaluating it. | |
ChristianE: 2-Jun-2005 | Yes, Gabriele, that's what I supposed it's all about, but since in the places I've seen it, the function weren't used as first class values, but rather evalutated. Jaime pointed me to another reason: the GET IN variant doesn't break if an object doesn't feature the wanted "slot". That really makes sense where code can't be too sure about the objects it handles. Actually, though the guru code I mentioned was some of your changes to the view event- and modal system (I'm still working my way thru it, trying to understand it's pickier details) and other view related code snippets from cyphre, I'd really thought I'd better ask in core group, since it may come down to a more broader misconception of path evalutation I had. I'm happy to see that it's "only" the point Jamie made which I overlooked. | |
Gabriele: 2-Jun-2005 | yes, the main point is that you are safer, whatever value is in the object. note that if the word is not available just using get in will break anyway in "older" versions. | |
Gabriele: 2-Jun-2005 | >> system/version == 1.2.8.3.1 >> obj: context [a: 1 b: 2] >> get in obj 'c ** Script Error: get expected word argument of type: any-word ** Near: get in obj 'c | |
Gabriele: 2-Jun-2005 | recent versions will not complain in this case (GET accepts NONE too) | |
Gabriele: 5-Jun-2005 | can you check port/locals/list? what do you get there? | |
Micha: 5-Jun-2005 | rebol [ title: "SOCKS SERWER" ] conn: make port! tcp://:800 proxy: make object! [ host: 208.59.117.69 port: 2988 ] black-lista: [ 69.64.51.223 194.69.207.145 80.252.0.145 194.69.207.165 217.73.17.115] adns: open/no-wait make port! dns:///async adns/awake: func [port /local data][ data: copy port print data false ] insert tail system/ports/wait-list adns heandler: func [ port /local data dns serwer client] [ serwer: first port wait serwer data: copy serwer ;data: make string! 10000 ;read-io serwer data 10000 print ["data1" to-binary data] dns: to-tuple copy/part skip to-binary data 4 4 insert adns dns ;print dns name either find black-lista dns [ close serwer print "firtled" print read join dns:// dns ] [ print "new connetion" insert serwer join #{005A} [debase/base skip to-hex serwer/port-id 4 16 to-binary dns ] client: make port! [ scheme: 'tcp host: system/words/proxy/host port-id: system/words/proxy/port ] ;insert tail system/ports/timeout-list client open/no-wait/binary/async/direct client :response client/sub-port: serwer insert tail system/ports/wait-list client client/date: data serwer/sub-port: client serwer/awake: :request ] false ] request: func [ port /local data f ] [ data: make string! 10000 read-io port data 10000 if f: find data "GET /favicon.ico" [ insert port "HTTP/1.1 404 Not Found" print "favicon.ico"] either (data <> {}) and not f [ print [ "data3" data ] if error? try [ write-io port/sub-port data length? data ][ print "error: close serwer"] ; insert port/sub-port data ] [ close port remove find system/ports/wait-list port port close port/sub-port remove find system/ports/wait-list port/sub-port port/sub-port print "close connetion client" print length? system/ports/wait-list ] false] response: func [ port e a /local data f ] [ switch e [ open [ insert port port/date ] read [ data: copy/part port a either ( a <> 8 ) [write-io port/sub-port data length? data] [ insert tail system/ports/wait-list port/sub-port ] ] close [ close port remove find system/ports/wait-list port port close port/sub-port remove find system/ports/wait-list port/sub-port port/sub-port print "close connetion serwer" print length? system/ports/wait-list] ] ] start: func [] [ conn: make port! tcp://:800 conn/awake: :heandler set-modes conn [no-wait: false] insert tail system/ports/wait-list conn open/no-wait/direct/binary conn ] stop: func [][ close conn remove find system/ports/wait-list conn] set-proxy: func [ h p ] [ proxy/host: h proxy/port: p ] print "proxy" lay: layout [ backdrop blue across h3 red "PROXY" f: field 145 return button green "start" [ p: parse f/text ":" remove find p "" set-proxy to-tuple p/1 to-integer p/2 source p start] button green "stop" [f/text: "" stop ] ] view/offset lay 4x29 halt | |
Gabriele: 6-Jun-2005 | otherwise, just try with trace/net on. you'll get a lot of output but surely the answer will be there somehow. | |
MichaelAppelmans: 11-Jun-2005 | I get the following error when I do this: ** Script Error: foreach expected data argument of type: series ** Near: foreach message mailbox [ print message ask "Next? " ] close | |
MichaelAppelmans: 11-Jun-2005 | thanks Graham, I get " type has no value" does this mean that rebol is unable to open this pop account? I know my domain, user and pwd are correct | |
Graham: 11-Jun-2005 | this is rather brute force as each email is downloaded ... better to use one of the top hacks to just get the headers | |
Henrik: 13-Jun-2005 | this is very strange... I get a whole range of different random errors: time outs, connection refused, commands not understood | |
Gabriele: 17-Jun-2005 | ammon: see above, if you use ANY you get 1 which is hardly what you want. | |
Piotr: 23-Jun-2005 | does anybody know why code below give me diffrent results? looks like get/set funcs operate on diffrent contexts: ctx: context [ no-a: no-b: no-c: none set 'test does [ foreach x [no-a no-b no-c] [set x "test-1"] foreach x [a b c] [set (to-word join "no-" x) "test-2"] foreach x [a b c] [print [join "no-" x get (to-word join "no-" x)]] foreach x [no-a no-b no-c] [print [x get x]] ] ] test probe no-a probe ctx/no-a | |
Ladislav: 23-Jun-2005 | ctx: context [ no-a: no-b: no-c: none set 'test does [ foreach x [no-a no-b no-c] [set x "test-1"] foreach x [a b c] [ d: bind to-word join "no-" x 'no-a set d "test-2" ] foreach x [a b c] [print [join "no-" x get (to-word join "no-" x)]] foreach x [no-a no-b no-c] [print [x get x]] ] ] test probe no-a probe ctx/no-a | |
Volker: 23-Jun-2005 | >> c: context[a: 123] >> a: 234 == 234 >> b: 'a == a >> get b == 234 >> bind b c == a >> get b == 234 >> b: bind b c == a >> get b == 123 | |
Pekr: 25-Jun-2005 | >> a: [1 1 2 2 3 3] == [1 1 2 2 3 3] >> b: [x y] == [x y] >> foreach :b a [print x] 1 2 3 >> foreach :b a [print b/1] x x x >> foreach :b a [print get b/1] ** Script Error: x has no value ** Where: halt-view ** Near: print get b/1 | |
Pekr: 25-Jun-2005 | Is it possible to get b/1 evaluated? I am not sure it is because of non-aggresive word evaluation, but maybe question for you 'bind gurus? :-) | |
Group: Parse ... Discussion of PARSE dialect [web-public] | ||
BrianW: 22-Aug-2005 | Part of me wants to just ignore it for now and get on to other stuff. | |
JaimeVargas: 21-Sep-2005 | But I guess adding extra syntax still get us in trouble. | |
Graham: 11-Oct-2005 | hmm. that works. except I miss the last piece of the text as if last piece less than n, it doesn't get copied. | |
Ladislav: 11-Oct-2005 | example of what you get and what want? | |
Graham: 11-Oct-2005 | Did you get a chance to talk to Carl? | |
Tomc: 11-Oct-2005 | I can get rid of the infinate nones by making an error ... | |
Graham: 1-Nov-2005 | I think it would .. but I can also get by by rewriting the parse rule. It would end up much longer though. | |
BrianH: 1-Nov-2005 | Well, I submitted the entry when you all said it was OK (I forgot to mention). Now we get to see how it all turns out. I like RAMBO much more than feedback - more public. | |
Graham: 4-Nov-2005 | How do get parse out ^? | |
Volker: 4-Nov-2005 | i would really get the data from outside. put them in a file and use obx: read %data.txt, or use clipboard. | |
BrianH: 4-Nov-2005 | Is there a standard we can read to get the syntax? | |
Graham: 4-Nov-2005 | Ok, my parser is able to get all the data out of all the records now in the test result above. | |
Graham: 7-Nov-2005 | currently I only have data from one laboratory - I'll have to contact some others to get theirs to see what their messages are like. | |
sqlab: 8-Nov-2005 | Yes, you get the NTEs, but you do not retain the information, which OBR, which OBX they comment or if the follow even the PID. That's why I use just one block for all segments retaining the order. | |
Graham: 8-Nov-2005 | Perhaps I can get around that by instantiating a new hl7object with each MSH segment... | |
Chris: 1-Dec-2005 | Yep, that's the workaround I use, but it can get complex... | |
Joe: 2-Jan-2006 | Hi, I am checking the example in the parse chapter, section 7.3 copying the output , but I don't get it !! | |
Joe: 2-Jan-2006 | yes, this makes sense but it doesn't handle opening and closing tags as the example seems to imply. I'll report to rambo so the docs get updated | |
Henrik: 8-Jan-2006 | yeah, each rule stop at a position, not going past it. that way you wouldn't be able to reach the tail of the series. THRU will get you to the tale | |
Anton: 8-Jan-2006 | Ah, recursive rules. :) I pushed my variables onto a stack when recursing, then popped them off when returning. That tends to bloat the code a fair bit. ( push-vars [a b c] recursive-rule pop-vars [a b c] ) so then you get to thinking to generate this code automatically with a make-recursive-rule function, which takes a parse rule, looks for recursion in it, then surrounds it with push-vars and pop-vars for you (kind of macro expansion). Or I did something like that, anyway. | |
Group: Tech News ... Interesting technology [web-public] | ||
Volker: 17-May-2006 | Google - the funny point here is: They say code in java, compile to javascript. The first time i see it that way around. Till now i heard "use scripting to get it running, use java/c for big things/speed". Javascript must be really awfull :) | |
Anton: 18-May-2006 | Why get so excited ? Did you read the last line in that article ? | |
Gabriele: 18-May-2006 | you cannot address the block; you can only get the blocks matching a pattern, and publish other blocks. | |
JaimeVargas: 18-May-2006 | Coordination can help prune non-determinism, coordination is different than communication between threads, lazy evaluation and continuations couuld help here, using a declarative approach to the whole computation can help get rid off non-determinism. The basic ideas are found in the CTM book. | |
JaimeVargas: 18-May-2006 | Getting Real Work Shop - https://workshop.37signals.com/ Getting Real is about getting the interface right before you get the software wrong. It's about less software, making change inexpensive and constant iteration. Less paper, more work. Less talk, more walk. Getting Real is about deliverin | |
Henrik: 7-Jun-2006 | I just tried Google Spreadsheets and I'm not too impressed. Granted the interface is simple and there is centralized storage, but the thing is slow to work in and dragging cells can get a bit messy if you accidentally drag outside the sheet area. this could have been done so much better in Rebol. | |
Henrik: 8-Jun-2006 | pekr, the drives themselves are OK, but the OS'es handle them badly. If I under MacOSX store some files on the drive and eject the drive as I properly should, the files are just not present on the drive according to WinXP, as if the ejection procedure didn't sync files to disk. Half the time, they don't work under Linux without hours of fiddling and most win98 machines won't handle them at all. Data transfer between machines is probably successful about 50% of the time. An internet connection is, for me, a much more reliable way to get data onto a machine. It's probably the syncing aspect that makes them so unreliable. | |
Pekr: 20-Jun-2006 | 71 KB of js, css, xml, html code to get weather plug-in .... imo could be done in fraction of size of rebol code ... | |
Henrik: 20-Jun-2006 | Widgets are good if they are done right. I like the dictionary widget for example in Tiger. If I'm watching a movie and someone says a word I don't know, I press F12, type the word, get an explanation, press F12 again without every pausing the movie or manipulating windows. | |
Izkata: 20-Jun-2006 | New MS Word is missing the File, View, and Insert menus.... that'd take forever to get used to... | |
JaimeVargas: 21-Jun-2006 | Ah. But the windows metaphor may get on your way, wasting pixels, could you imagine an airplane control with windows interface? I think widget are good as Ashley pointed out. The approach apple took seem appropiate too. | |
Chris: 21-Jun-2006 | You would think. But you have to dig deeper to get comparable results. | |
Pekr: 21-Jun-2006 | or we can establish new group .... this is interesting topic .... I would like to get everybody's idea, as VID will be redone for 3.0 .... maybe we could move more towards css aproach and the like ....? | |
Graham: 13-Jul-2006 | If we can get a stable and rich gui | |
[unknown: 9]: 13-Jul-2006 | FF does get scary some times, and it seems easy to fix...odd. | |
Pekr: 11-Aug-2006 | .NET and JAVA to get better dynamic language support - http://arstechnica.com/news.ars/post/20060810-7462.html | |
Henrik: 23-Oct-2006 | It's easy. I made some tools for my Linksys access point, which could only read out signal strength about once every 30 seconds with reloading the webpage on its internal webserver. By using REBOL and telnet access on it, I could get a real time graph for the same thing. It's even less stressful and requires less bandwidth for the access point. There must be many other things that can be improved like that. | |
Henrik: 23-Oct-2006 | graham, requires a specific model of linksys access point with a modified firmware to get telnet access... | |
Henrik: 23-Oct-2006 | but you get the point :-) | |
Terry: 28-Oct-2006 | Some things are clearer with hindsight of several years. It is necessary to evolve HTML incrementally. The attempt to get the world to switch to XML, including quotes around attribute values and slashes in empty tags and namespaces all at once didn’t work. The large HTML-generating public did not move, largely because the browsers didn’t complain. Some large communities did shift and are enjoying the fruits of well-formed systems, but not all. It is important to maintain HTML incrementally, as well as continuing a transition to well-formed world, and developing more power in that world. The plan is to charter a completely new HTML group. Unlike the previous one, this one will be chartered to do incremental improvements to HTML, as also in parallel xHTML. It will have a different chair and staff contact. It will work on HTML and xHTML together. We have strong support for this group, from many people we have talked to, including browser makers. Tim Berners - Lee | |
Pekr: 9-Nov-2006 | What we were supposed to get back in 2003? http://youtube.com/watch?v=b9ifQvQCO7Y - what a multiimedia capabilities :-) | |
Graham: 13-Nov-2006 | I didn''t have enough experience to get Postgresql driver working. | |
Pekr: 15-Nov-2006 | There is a new scripting language in development called F3 from Sun, specifically designed for GUI programming. It allows designing Flash-like GUIs with ease and can call Java libraries directly. You can launch demos and get more information from the related blog. - http://blogs.sun.com/chrisoliver/category/F3 | |
Henrik: 16-Nov-2006 | Yes, it makes you wonder which language allows you to get work done more quickly. Maybe REBOL could be called "on-demand scripting"? | |
Pekr: 16-Nov-2006 | Henrik - it is vice versa - you always could tell undecided programmer - look how awfull code you need to write to just get "this" done. And now he/she can tell you - well, we have F3 now, to help us to create UIs in a simpler way ... | |
Graham: 22-Dec-2006 | 800x480 .. have to wait till they get better resolution! | |
[unknown: 9]: 10-Jan-2007 | No, but it would be heavy, since you would hauling around a giant spool of cooper wire. So it might only get 3MPG, but hey, your headset would not need batteries! |
2201 / 10262 | 1 | 2 | 3 | 4 | 5 | ... | 21 | 22 | [23] | 24 | 25 | ... | 99 | 100 | 101 | 102 | 103 |