r3wp [groups: 83 posts: 189283]
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r3wp

[!REBOL3]

Carl
6-Mar-2010
[1316]
I wrote the doc because we do need to solve this issue... probably 
in A99 or A100.
Henrik
6-Mar-2010
[1317]
ok
Carl
6-Mar-2010
[1318]
And also, because it was a hot topic above... with many of the key 
people chatting on it. So, good time to get it finalized.
Henrik
6-Mar-2010
[1319]
OT: It's interesting, the term "dynamic lexical scoping" produces 
no direct hits on google. Only references to dynamic or lexical scoping. 
OK, back to topic. :-)
Carl
6-Mar-2010
[1320x2]
I probably should quote that.  BTW, in REBOL definitional scoping. 
So run-time lexical.
fixed
Henrik
6-Mar-2010
[1322x2]
The example just below that sentence with definitional scoping: I 
agree on that.


I ran into exactly this issue just last night in an attempt to wrap 
some function bodies in a primitive callstack mechanism (R2 code) 
so I could debug it easier. The debugging mechanism kept crashing 
there, because it ran straight through the first 'return and "returned" 
twice.


R3 of course doesn't need function scoped return for that reason, 
since I can already see the stack trace on an error, but for other 
reasons (correctness?).
Possible Return Method: Using set-word! in function spec could also 
be confused as default value for an argument. Only beginners would 
do that, I suppose.
Carl
6-Mar-2010
[1324x2]
Yes, but word, :word, and 'word are taken.
Other set-words might be catch: throw: trace: debug:
Pekr
6-Mar-2010
[1326]
any comment towards !REBOL3 GUI wait & CPU sleep times topic? :-)
Henrik
6-Mar-2010
[1327x2]
try/handle is one char shorter than try/recover :-)
alternatively:

try [block]

handle [block][error handler]
Carl
6-Mar-2010
[1329]
Anything shorter than handle? :-)
Henrik
6-Mar-2010
[1330]
not sure, at least not without losing the meaning
Geomol
6-Mar-2010
[1331x3]
try/do
try/on-error
Or it should be an refinement to DO?

do/on-error


But then it's a question, if TRY should be there in the first place.
*a* refinement
Henrik
6-Mar-2010
[1334]
Carl, there is also an issue with waiting more than 597 hours in 
R2. It can be read about in the Core group. Not yet reported to RAMBO. 
I wonder if you could at least comment on it?
Carl
6-Mar-2010
[1335x2]
try/else
H: link?
Sunanda
6-Mar-2010
[1337]
WAIT issue link:
  http://www.rebol.org/aga-display-posts.r?post=r3wp157x16010
Henrik
6-Mar-2010
[1338x2]
Carl, nine posts back in the Core group.
DocKimbel posting.
Geomol
6-Mar-2010
[1340]
I see, TRY already has a refinement called /except.
Henrik
6-Mar-2010
[1341]
oops, sunanda provides the right link, sorry.
Carl
6-Mar-2010
[1342x3]
G: no way... ah!
Works too. Great, check that one off. ;)
Docs updated.
Henrik
6-Mar-2010
[1345]
handle: :try/except

would be cool, but maybe that's taking refinements too far. :-)
Carl
6-Mar-2010
[1346]
That worked at some point.
Chris
6-Mar-2010
[1347x2]
What's the quickest way to detect R3 vs R2 for hybrid scripts?
system/version/2 = 100 ?
Robert
6-Mar-2010
[1349]
How about allowing: clear object!


This could set all object! words to none. Would be a nice way to 
reset an object! into a clean state.
Steeve
6-Mar-2010
[1350]
We aleady have it
>> set my-object none
Robert
6-Mar-2010
[1351]
Ah, cool. But it's not very obvious from the wording. IMO clear would 
be nice.
Steeve
6-Mar-2010
[1352]
don't waste our time, do a mezz if you prefer ;-)
Henrik
6-Mar-2010
[1353]
using clear would imply that an object is a series.
Paul
6-Mar-2010
[1354]
Carl is here maybe he can comment on the previous discussion regarding 
chaining.
Steeve
6-Mar-2010
[1355]
eh ? where is that discussion ?
Paul
6-Mar-2010
[1356x4]
That was this one:

>> a: construct [b: c: 2]
== make object! [
    b: 2
    c: 2
]
On how to keep the 'b from being assigned the 2
So that it could actually be:

==make object! [
b: none
c: 2
]
Just so that we can do some dynamic building of blocks with set-words 
and pass it to construct and not worry about a set-word getting assigned 
a value from the chain.
Steeve
6-Mar-2010
[1360]
you want optional assignement ?
Paul
6-Mar-2010
[1361]
yes, maybe a refinement that allows me to suppress the chaining for 
constructs
Andreas
6-Mar-2010
[1362]
Paul, just iterate through the block before you construct it and 
whenever a set-word! is followed by another set-word! insert a none 
in between.
Paul
6-Mar-2010
[1363]
Yeah I could do that Anreas, just like most functions we can usually 
do some prework but thought it would offer something a bit safer 
built-in.
Andreas
6-Mar-2010
[1364]
Write such a function and offer it to be included as mezzanine.
Paul
6-Mar-2010
[1365]
Any chance we can promote a feature of REBOL that looks more secure 
or performance oriented out of the box is a marketing plus in my 
opinion.