On Thu, Aug 09, 2007 at 02:29:50PM -0700, Chad Scherrer wrote: > Is there process for submitting functions for consideration for > inclusion into future versions of the standard libraries? For example, > I'd like to see this in Data.List: > > extract :: [Int] -> [a] -> [a] > extract = f 0 > where > f _ _ [] = [] > f _ [] _ = [] > f k nss@(n:ns) (x:xs) = if n == k then x:f (k+1) ns xs > else f (k+1) nss xs > > This behaves roughly as > extract ns xs == map (xs !!) ns > > except that it's a lot more efficient, and it still works if ns or xs > (but not both) are infinite. Oh, and "ns" are required to be ordered > and non-negative. > > I'm guessing there are a lot of similarly simple handy functions, and > I'm wondering if there's anything in place to avoid (1) reinventing > the wheel, and (2) name clashes. Someone else may have written > "extract" as well, meaning one of us wasted our time. And chances are, > if they did, it has a different name, leading to forced qualified > imports. > > Finally, even if no one else is using it, it would be good to settle > on reasonable names for things more easily. Is there a better name for > this function? Is there a reason not to call it "extract"?
http://www.haskell.org/haskellwiki/Library_submissions Stefan
signature.asc
Description: Digital signature
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe