Mailing List Archive: 49091 messages
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

[REBOL] Don't feed him! He'll just keep coming back!

From: joel::neely::fedex::com at: 30-Oct-2000 17:36

Encouraged by Jeff's explanation of why there's utility in Forall leaving the target block modified, let me ask about another case that seems inconsistent to me. The RCUG description of paths seems to me to say that a numeric path component is equivalent to Pick and a non-numeric component is equivalent to Select. It also says that None is the value that signifies "nobody home". Assuming that these are correct readings...
>> stuff: [1 2 3 4] == [1 2 3 4] >> pick stuff 3 == 3 >> stuff/3 == 3
; as expected
>> pick stuff 5 == none >> stuff/5 == none
; as expected
>> nonsense: [a 4 b 3 c 2 d 1 f 0] == [a 4 b 3 c 2 d 1 f 0] >> pick nonsense 3 == b >> nonsense/3 == b >> pick nonsense 12 == none >> nonsense/12 == none
; so far so good
>> select nonsense 'b == 3 >> nonsense/b == 3
; still on track
>> select nonsense 'i == none >> nonsense/i
** Script Error: Invalid path value: i. ** Where: nonsense/i Where's the benefit to this inconsistency? Is there some reason why this shouldn't evaluate to None as well? -jn- -- ; Joel Neely [joel--neely--fedex--com] 901-263-4460 38017/HKA/9677 REBOL [] do [ do func [s] [ foreach [a b] s [prin b] ] sort/skip do function [s] [t] [ t: "" foreach [a b] s [repend t [b a]] t ] { | e s m!zauafBpcvekexEohthjJakwLrngohOqrlryRnsctdtiub} 2 ]