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

World: r3wp

[!REBOL3]

Maxim
2-Aug-2010
[4305]
yes its like empty? and tail?  I coudn't live without one or the 
other, though one is more stringent...  last? and single?  should 
follow the same path.
BrianH
2-Aug-2010
[4306]
As I said in that ticket, the strictness is an absolute feature.
Graham
2-Aug-2010
[4307x4]
Funct may have been there for 1.5 years .. but I haven't started 
using it ...
( much )
It's in the network protocols ...
but then I can just put at the top funct: :funx
BrianH
2-Aug-2010
[4311]
Really? We use it every chance we get in the mezzanines. Except where 
inappropriate, of course. It makes functions look cleaner.
Graham
2-Aug-2010
[4312x2]
That's because I'm still developing with sdk 2.7.7
And as far as I can tell, the stuff you wrote has never been properly 
documented
BrianH
2-Aug-2010
[4314]
Which has FUNCT.
Graham
2-Aug-2010
[4315x3]
2.7.6 .... I meant
I didn't see any compelling reason to upgrade to 2.7.7
and there were a number of reports, including one from Carl, to say 
that 2.7.7 sdk was broken
BrianH
2-Aug-2010
[4318]
Nor would I suggest it, even though 2.7.6 has known problems. You 
can grab the rest from R2/Forward anyways. I would suggest waiting 
to upgrade until 2.7.8.
Graham
2-Aug-2010
[4319]
Where exactly is R2/forward documented/?
BrianH
2-Aug-2010
[4320x2]
In the source. But only the changes from R3 need to be documented. 
For the most part the R3 documentation should apply.
The whole point to R2/Forward was to replicate R3 behavior. And it 
does so wherever possible or practical.
Graham
2-Aug-2010
[4322]
R3 is alpha .. it seems to me a little odd to expect R2 users to 
have to look at R3 documentation for R2 functionality
BrianH
2-Aug-2010
[4323x2]
Not all of R3 is alpha. Some of it is quite settled.
At the time of the last R2 release the documentation was being reorganized 
and no third-parties had access to it. So I couldn't update the documentation.
Graham
2-Aug-2010
[4325]
Can that be fixed ?
BrianH
2-Aug-2010
[4326]
As for R2/Forward, the documentation is in the source because part 
of the purpose of the source is to document R3's and R2's behavior, 
through comparison. It should have more docs, but without the context 
that the source provides it is difficult to understand what the docs 
mean. The source is written to be readable too.
Graham
2-Aug-2010
[4327]
The source is where?
BrianH
2-Aug-2010
[4328x3]
It can be fixed, but I don't have the time to work on extra docs 
at the moment. I wrote a lot of documentation in the R2/Forward source, 
and it has the advantage of being tied to the specific version of 
the code that it refers to.
Chat, #837, in the community libraries section.
Community/Libraries/R2-Forward
Graham
2-Aug-2010
[4331]
talk about obscure ...
BrianH
2-Aug-2010
[4332x3]
It's not obscure, it's where community libraries go. If you are qualified 
to help with R2/Forward development, you are already participating 
in R3 development.
It works with 2.7.*, and likely earlier. My eventual goal is to make 
it work all the way back to 2.5.0, since that is the last R2 version 
on many platforms.
If you are qualified to help...
 - like that guy Graham, for instance.
Graham
2-Aug-2010
[4335x2]
I am talking about a user, one we want, who downloads view 2.7.7 
from RT's website.  He naturally wants to find documentation for 
some of the new functions.  So, it seems that you're suggesting that 
it's okay to make them sign up to devbase just to get the docs
And of course he has to know he has to do this ... and where in devbase 
to find them.
BrianH
2-Aug-2010
[4337]
No, I was saying that 2.7.8 would include a DevBase client, but plans 
changed.
Ladislav
3-Aug-2010
[4338x2]
Regarding the values of "refinement arguments" - I still miss more 
opinions, than just Max's.
On one hand is the fact, that we have lots of code using this.


On the other hand is the fact, that it is a beginner's gotcha being 
incompatible with the help string of the VALUE? function, as well 
as with the behaviour of the interpreter in other, quite similar, 
cases.
Oldes
3-Aug-2010
[4340x2]
If it can be changed in R3, I think that unset! makes more sense.
For unused /local values. For unused refinements I think they must 
be #[none] to be able do code like:
f: func[/switch][ if switch [ true ] ]
Graham
3-Aug-2010
[4342]
why unset! ?  If you've defined them, presumably the intention is 
to use them
Ladislav
3-Aug-2010
[4343x2]
The gotcha is not whether a variable is "defined", but whether it 
has been set.
Nevertheless, if we have a comprehensive documentation mentioning 
this, we can easily use either, since for every experienced user 
it is easy to remember that "unused refinement arguments" are set 
implicitly to #[none]
Gabriele
3-Aug-2010
[4345]
I tend to like them being NONE, but I'm not strongly opposed to using 
UNSET instead
Ladislav
3-Aug-2010
[4346]
thanks
Anton
3-Aug-2010
[4347]
I'm with Gabriele on that.
BrianH
3-Aug-2010
[4348x2]
I am strongly in favor of optional function arguments being none 
by default. When combined with type tests that prohibit the none! 
type, it allows you to easily use data flow analysis to handle the 
control flow of the different options. You have to realize that none 
is a non-value too. The main difference between none! and unset! 
is that unset! is usually chosen when a non-value is an error, and 
none! is chosen when it is less likely to be an error. And for function 
arguments, not choosing an option is normal behavior.
Oldes, /local is just another function option, nothing special. It's 
only treated specially by the HELP function, not by function evaluation.
Gregg
3-Aug-2010
[4350]
I thought I posted my opinion, but I prefer none. I only use unset, 
intentionally, in exceptional cases.
BrianH
3-Aug-2010
[4351]
Ladislav, I don't have to "remember" that optional arguments are 
#[none] by default: Most of my code absolutely depends on it. Handling 
unset values is a big hassle, on purpose. I don't want to go through 
that hassle for a normal situation, just for exceptional situations. 
We are supposed to use unset! to trigger errors.
Steeve
3-Aug-2010
[4352x3]
none none none...
my opinion is optionnal though
but not unset