Brett Kelly wrote:

> I'm trying to write a function that takes a list and a element (same type) and
> returns the index of the first instance of the element in the list.  like:
> getindex "brett" 'e' would return 2, etc.
> 
> i'm trying to accomplish this using an accumulator, here's what i've got:
> 
> pyindex :: Eq a => a -> [a] -> Maybe Int
> pyindex c l = pyindex' 0 chr (x:xs)

None of chr, x or xs are defined here; if you change the above line
to:

        pyindex c l = pyindex' 0 c l

it works.

Except that you will get a match failure if the list doesn't contain
the specified element, so you also need a base case:

        pyindex' _ _ [] = Nothing

-- 
Glynn Clements <[EMAIL PROTECTED]>
_______________________________________________
Haskell-Cafe mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to