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

World: r3wp

[Core] Discuss core issues

eFishAnt
27-Nov-2005
[2832]
what would the source of 'sixth be? (something like   sixth: func 
[ serease ] [pick serease 6] ;but how to make it be an action value?
Anton
27-Nov-2005
[2833x2]
Actions are like natives. They are built in and you can't make them 
yourself.
What makes you want to do that, though ?
Volker
27-Nov-2005
[2835x2]
Grham: use subrule
changing: ['literal]
parse phrase [changing]
Or do you want to catch any lit-word?
eFishAnt
27-Nov-2005
[2837x2]
Anton...I was afraid that would be the answer...course, maybe it 
works anyway...where a function! is used in the place of an action! 
(however, I dread there might be some side-effect if action! needs 
a context, and that context it needs is not provided by the function! 
substitute.
I will let you know if I reach a pitfall with my approach (so far, 
so good...;-)
Graham
27-Nov-2005
[2839x5]
Volker, the parse rule occurs in a BEER callback .. and I need to 
change the parse rule depending upon which BEER function I am calling. 
 Of course, there are always workrounds one can set up, but was wondering 
if there was some way to relax the REBOL interpreter when building 
up dynamic code like this.
I found myself writing lots of BEER code that all looked the same 
...
Seems the 'case statement is not in the encap from July last year 
and it's a native.
Anyone have source for a mezzanine case statement ?
Ahh... someone just posted one to rebol.org, but it doesn't work 
the same way as the native.
Ladislav's PIF function appears to be functionally similar to the 
new case construct

The old domain still seems to work

http://www.fm.vslib.cz/%7Eladislav/rebol/pif.r
Ryan
27-Nov-2005
[2844x2]
Great! A case statement! I have been waiting for that!
I like the functionality too. nice!
Ladislav
28-Nov-2005
[2846]
if you rename PIF to CASE (in the PIF source too), you hardly can 
find a difference
Henrik
28-Nov-2005
[2847x3]
is there a way to use a function with a refinement as a word?
something like:
do-a-function either condition ['ref][none] <arguments>

as opposed to the clumsier:


either condition [do-a-function/ref <arguments>][do-a-function <arguments>]
Volker
28-Nov-2005
[2850]
No good ways. You can build a path and do that.
JaimeVargas
28-Nov-2005
[2851x3]
Dialect
You can try multimethods.r
And have two singleton methods on the argument ref.
Volker
28-Nov-2005
[2854x2]
for own functions once i had an idea, but never really used:
f: func[/a va /b vb /opts blk][
 if opts[do bind blk 'opts] 
 ?? a ?? b
]
f/opts [a: 5]
Henrik
28-Nov-2005
[2856]
hmm... a bit confused about the BIND part...
Volker
28-Nov-2005
[2857x4]
it binds the opts-blk to the locals. then you can set the locals 
from the caller.
still confusing, but
ref-a: none
val-a: "A"
ref-b: true
val-b: "B"

f/opts [a: ref-a if ref-a[va: val-a]  b: ref-b if ref-b[vb: val-b]]
but then it needs a composeto avoid name-clashes. maybe not the best 
idea.
Henrik
28-Nov-2005
[2861]
you lost me :-) but it's ok, I'll try something with build-path...
Geomol
28-Nov-2005
[2862]
You can do this:

do to-path reduce ['do-a-function either condition ['ref][none]] 
<argument>
but if it's less clumpsy, you deside!
BrianH
29-Nov-2005
[2863x2]
; Try this way, no reduce or to-path...

do either condition ['do-a-function/ref] [:do-a-function] <argument>
; Or this
do pick [do-a-function/ref do-a-function] condition <argument>
Gabriele
29-Nov-2005
[2865x2]
Graham:
>> word: to lit-word! 'literal
== 'literal
>> parse [literal] [word]
== true
Henrik
29-Nov-2005
[2867x2]
lots of different solutions to my problem... thanks everyone :-)
a comment on ATTEMPT. I think it's a wonderful function, but don't 
overuse it because it can make your code hard to debug when nothing 
happens where there should be an error.
DideC
29-Nov-2005
[2869]
true
Volker
29-Nov-2005
[2870]
i only use it for single calls.
Anton
30-Nov-2005
[2871]
Steve, when it comes to SIXTH, I wouldn't worry too much.
Graham
30-Nov-2005
[2872]
Is there a way to set and read windows environmental variables ?
Pekr
30-Nov-2005
[2873]
'get-env ?
Graham
30-Nov-2005
[2874x3]
thanks.
Does it work ?
works with "path" ..
Chris
30-Nov-2005
[2877x2]
env
'scuse me...
Graham
30-Nov-2005
[2879]
Perhaps I need to reboot for rebol to pick up user env variables 
?
Gabriele
1-Dec-2005
[2880]
>> get-env "APPDATA"

== {C:\Documents and Settings\Gabriele Santilli\Dati applicazioni}
Graham
1-Dec-2005
[2881]
I had to reboot for this to work.