World: r3wp
[!REBOL3-OLD1]
older newer | first last |
Pekr 9-Jul-2009 [16208] | Brian - I don't understand proposal for invalid-utf-8 function. What is it good for? Is it about some binary code not being able to be converted to regular char? |
BrianH 9-Jul-2009 [16209] | It's about finding UTF-8 encoding errors, particularly the overlong forms that are used for security breaches. We can't do that check in TO-STRING because of the overhead (+50%), but it can still be a good idea to check in some cases, and the code is better written in C than REBOL. |
Pekr 9-Jul-2009 [16210] | That is what came to my mind - if to-string should not care itself. Well, not even sure it is about to-string, but about particular decoder? |
BrianH 9-Jul-2009 [16211] | TO-STRING is the primary decoder of UTF-8 in REBOL.. TO-CHAR is the other one, and it complains about invalid UTF because it can. |
Sunanda 9-Jul-2009 [16212] | How do I get stack to do anything useful? I assume I have to enable it with system/options/debug or secure But just poking around has not found the magic words (ditto, web searching). |
BrianH 9-Jul-2009 [16213x2] | You mentioned the security, but the trick is that STACK is undocumented and you have to poke around and try things out for it to work. To my knowledge, I am the only one who has come up with proof-of-concept code that uses STACK, but the concepts proven were meant to highlight security holes :( |
I haven't tried out all of its options yet either. | |
Sunanda 10-Jul-2009 [16215] | Stack has teaser documentation, but the examples no longer seem to work: http://www.rebol.net/r3blogs/0075.html |
Pekr 10-Jul-2009 [16216] | A70 released. GUI demo runs once again ... |
PeterWood 10-Jul-2009 [16217] | ... is that on Windows only? |
Pekr 10-Jul-2009 [16218x2] | dunno ... |
http://www.rebol.com/r3/downloads.html- Win and Linux this time. I expect non-Win platforms being Core only too ... | |
amacleod 10-Jul-2009 [16220] | Great to see GUI Demo back up...even "text view" demo works now... I saw Carl made some more changes to GUI not yet included in build. Any ideas on what changed? |
Henrik 11-Jul-2009 [16221] | the changes are not yet implemented. the layout system will be changed to contain a guide system and multiple layers. if it works, there will not be any more trouble with the layout engine. |
Graham 11-Jul-2009 [16222] | I hope we can dictate into these text entry fields ... windows speech recognition is apparently quite good. |
Henrik 11-Jul-2009 [16223] | if it works like a generic keyboard, then you should be able to do it in R2 as well. try putting up a view layout [field] and see if it works. |
Graham 11-Jul-2009 [16224] | It works under Vista, but can't get it to work under Windows 7 |
Henrik 11-Jul-2009 [16225] | why am I not surprised... tried other non-native programs? |
Graham 11-Jul-2009 [16226x2] | Yes .. they don't work either ( Chrome ) |
Curiously IE8 is okay. | |
Henrik 11-Jul-2009 [16228] | I wouldn't be surprised if they made it so it won't work in other than through certain APIs. |
Graham 11-Jul-2009 [16229x3] | Having the OS vendor also an application vendor is the problem. |
They should split up MS like they did to the Bells | |
But is speech an OS thing or an application? | |
Henrik 11-Jul-2009 [16232] | It should most definitely be an OS thing. It should work like generic keyboard input. There would, though, be two kinds of input: One for dictation and one for GUI control. The latter might be harder to do in REBOL without some OS friendly extensions. |
Graham 11-Jul-2009 [16233x2] | It's more sophisticated than just keyboard input. It can be used to select words, undo selections etc |
all dialect driven | |
Henrik 11-Jul-2009 [16235] | I think what they should have done here, is lift ordinary keyboard commands. You would simply say the key names, along with a few extra commands, like "again". This way you don't have to remember an entirely separate command set. This is also a problem in MacOSX, because the command set is very limited and nearly useless. |
Sunanda 11-Jul-2009 [16236] | R3 function for creating objects with default values. Neat! object [a: b: c:] == make object! [ a: none b: none c: none ] |
PeterWood 11-Jul-2009 [16237] | ... and slow! >> do [st: now/precise loop 10000 [object [a: b: c:]] et: now/precise] == 11-Jul-2009/23:55:57.406+8:00 >> difference et st == 0:00:04.36 >> do [st: now/precise loop 10000 [make object! [a: #[none] b: #[none] c:#[none] ]] et: now/precise] == 11-Jul-2009/23:56:13.578+8:00 >> difference et st == 0:00:00.032 |
Sunanda 11-Jul-2009 [16238] | That's functions for you :-) |
Pekr 11-Jul-2009 [16239] | well, how often do you create 10K objects at once? :-) |
Henrik 11-Jul-2009 [16240] | I find it a little strange that it is so slow: >> source object object: make function! [[ "Defines a unique object." blk [block!] "Object words and values." ][ make object! append blk none ]] |
Tomc 11-Jul-2009 [16241] | P: well, how often do you create 10K objects at once? :-) frequently |
BrianH 11-Jul-2009 [16242] | It is slow because he reuses the same spec block over and over, which means that with every loop iteration another #[none] is added to the spec block. This means that the spec block has to be expanded many times, with reallocation overhead. The OBJECT function was meant to be used with specs that aren't reused - it's a convenience function for high-level objects, which may be replaced by a change to MAKE object! to have an implicit none on the end of the spec instead of needing to add an actual one. |
Gregg 12-Jul-2009 [16243] | Why not just have it use JOIN internally, rather than APPEND? |
Pekr 12-Jul-2009 [16244] | Append is native too, no? |
Gregg 12-Jul-2009 [16245x2] | But APPEND changes the spec block, which caused the speed issue Peter pointed out. |
At this point, I don't see the value in the OBJECT func myself. | |
Pekr 12-Jul-2009 [16247] | Because of the speed issue? |
Gregg 12-Jul-2009 [16248] | No, that's incidental. |
Sunanda 12-Jul-2009 [16249] | Yes, looking at object, there are two problems: 1. it is slow .... though as Gregg says, that looks like it can be fixed by changing its pith to: make object! join blk none 2, it is unnecessary. I never realised until now that this works fine to set default values: make object! [a: b: c: d: none] |
BrianH 12-Jul-2009 [16250] | Sunanda, the OBJECT function was one of the language usability tweaks we made while writing the R3 GUI code. It is likely that the functionality of OBJECT will be added to the MAKE object! handler, at which point OBJECT will just be another word for the CONTEXT function. In the meanwhile we have already seen the value of it in the GUI source. |
sqlab 13-Jul-2009 [16251] | Sub-panels do no longer work with the demo. The error messages is ** Script error: append2 has no value ** Where: repeat do switch applier apply if foreach if do-face if foreach do-tr ggers switch-panel view-sub-panel do switch applier apply if foreach if do-face if actor all do-style all until do-event do-event do-event either applier wake- p loop applier wait do-events if view catch either either applier do try demo ** Near: repeat n 60 [ append2 blk 'label ajoin ["Field " n] ... ** Note: use WHY? for more about this error |
PatrickP61 13-Jul-2009 [16252x2] | Yeah, I saw that too, I tracked it down to the APPEND2 command which is no longer used in the GUI.R Instead, it looks like the REPEND command took it's place, but was not changed in the DEMO.R |
This work-around should fix the demo for sub-panels: Run R3 as you normally would then type this command: APPEND2: :REPEND Then you can run the DEMO. It is just a quick fix until the DEMO.R script is changed. | |
BrianH 13-Jul-2009 [16254] | That may not work the way you think since REPEND (which has 2 arguments) didn't actually take the place of APPEND2 (3 arguments). |
Pekr 14-Jul-2009 [16255] | Ah, Carl is preparing to split user and system context. What will that mean? Respectively - what is the purpose of such change, to have those isolated? Better modularisation? |
PatrickP61 14-Jul-2009 [16256] | BrianH, I thought it was a straigt replacement, but looking closer at the code, i do see the change. Disregard my work-around suggestion. |
BrianH 14-Jul-2009 [16257] | Patrick, you can replace APPEND2 with APPEND APPEND. |
older newer | first last |