User loginNavigation 
Unfilter (or merge) listsWhat is the standard functional construct which is the converse of filter? Eg. if I want to add 0 between all elements of a list? Or if I want to merge two sorted lists preserving sorting? I am thinking of a "unfilter" construct which takes a list of lists, and a list of functions applied in turn (*insert 0 between two elements of the list*) unfilter [a] [fun x::xs > (x, [xs]); fun as > (0, [as])] (*merge two sorted lists*) unfilter [a;b] [fun as, bs > match as, bs with  x::xs, y::ys => if y < x then (y, [as;ys]) else (x, [xs;bs])  [], y::ys => (y, [[];ys])  x::xs, [] => (x, [xs;[]])] By Denis Bredelet jido at 20080422 11:25  LtU Forum  previous forum topic  next forum topic  other blogs  5528 reads

Browse archivesActive forum topics 
Recent comments
6 weeks 4 days ago
6 weeks 6 days ago
7 weeks 14 hours ago
14 weeks 12 hours ago
19 weeks 5 days ago
19 weeks 6 days ago
20 weeks 5 days ago
23 weeks 3 days ago
24 weeks 6 days ago
25 weeks 2 hours ago