* Emeka <[email protected]> [100909 09:59]:
> Hello All,
>
> I have the below solution, but I want something better.
>
>
> Ismember?: func[my-list start-n n t-element][
> first-element: first at my-list start-n
> if t-element = first-element [return true]
> if start-n = n [return false]
> Ismember? my-list ADD start-n 1 n t-element
> ]
The last line:
> Ismember? my-list ADD start-n 1 n t-element
would be better coded:
Ismember? my-list (ADD start-n 1) n t-element
for readability, precedence and disclosure of intent.
Also, I recommend that you familiarize yourself with
the rebol function interface dialect.
IOWS, you can control the data sent to the function
by specifying the datatypes of the arguments
Example:
Ismember?: func[my-list[block!] start-n[integer!] n[integer!]
t-element[any-type!]][
;; .... code here
]
This approach has at least two advantages:
1)Clarifies the intent of the function
2)Generates error messages at the function call rather than
somewhere down the road where some side effect kicks in as
a result of an unintended argument type.
I hope this helps. If I have confused the issue more, :) I can
elaborate.
tim
> On Thu, Sep 9, 2010 at 6:38 PM, Emeka <[email protected]> wrote:
>
> >
> > Hello All,
> >
> > Which word would I use for something like this? I have a block [ A B C D] ,
> > I would like to do
> > Ismember? [A B C D] D comes true because D is in the block already , but
> > Ismember?{A B C D] F comes false.
> >
> >
> > Regards,
> > Emeka
> >
> > --
> > *Satajanus Nig. Ltd
> >
> >
> > *
> >
>
>
>
> --
> *Satajanus Nig. Ltd
>
>
> *
>
>
> --
> To unsubscribe from the list, just send an email to
> lists at rebol.com with unsubscribe as the subject.
>
--
Tim
tim at johnsons-web.com or akwebsoft.com
http://www.akwebsoft.com
--
To unsubscribe from the list, just send an email to
lists at rebol.com with unsubscribe as the subject.