__color__	__group__	ticket	summary	component	version	milestone	type	owner	status	created	_changetime	_description	_reporter
3	Active Tickets	447	Add block-level IO	Primitives	0.5		enhancement		new	2010-04-22T03:42:47Z+0100	2010-04-22T03:42:47Z+0100	"The fromHandle producer and toHandle consumer should be reading and writing whole blocks instead of individual characters. The easiest way to integrate them with the other components would be through combinators that convert block components to single-character components.
"	blamario
3	Active Tickets	442	Add more primitive producers	Primitives	0.4	0.5	enhancement		new	2010-01-28T04:06:53Z+0000	2010-01-28T04:06:53Z+0000	"Add more non-IO primitive producers, such as:
 * infinite repeating producer,
 * natural number producer,
 * random number producer.
"	blamario
3	Active Tickets	451	Add pattern-matching component type, its primitives and combinators	Combinators	0.6		enhancement		new	2010-11-12T03:16:52Z+0000	2010-11-12T03:16:52Z+0000	"Splitters are not really the best choice for pattern-matching components. There should be a different component type for that purpose. It would still take one source and two sinks of the same type - one for the matching part of the input and the other for the consumed, but unmatched part - but it would not consume any input beyond what it needs to establish the match portion.
"	blamario
3	Active Tickets	453	Add QuickCheck testsuite for monad-coroutine	Monad.Coroutine	0.6		task		new	2010-11-16T03:28:55Z+0000	2010-11-16T03:28:55Z+0000	"The current test for monad-coroutine are not very thorough, and they are mostly good only for performance testing. A !QuickCheck test suite is needed.
"	blamario
4	Active Tickets	452	Add support for time-tagged items	Combinators			enhancement		new	2010-11-12T03:22:50Z+0000	2010-11-12T03:22:50Z+0000	"Streams allow more things to be done when each of them items carries a time stamp. A transducer of such streams can be made an arrow, for example.
"	blamario
3	Active Tickets	443	Add zipping and merging components	Combinators	0.4	0.5	enhancement		new	2010-01-28T04:15:00Z+0000	2010-01-28T04:15:00Z+0000	"A zip component would be similar to zip and zipWith functions on lists, except it would be working on two sources and sending results into a sink. It would have to stop when either of the sources is exhausted.

A merge component would also take two sources and one sink, but they'd all need to have the same type and it would run as long as either source provides more input.

It's not too clear what combinators could apply to these component types.
"	blamario
3	Active Tickets	444	The followedBy combinator needs to know about region ends	Combinators	0.4		defect		new	2010-02-15T16:31:13Z+0000	2010-02-15T16:31:13Z+0000	"Tests occasionally fail because substring is not capable of telling followedBy where the end of the first of two overlapping strings is.

*Main> splitterOutputs (substring [Three,Three] `followedBy` substring [Three]) [Three,Three,Three]
([Three,Three],[Three])
"	blamario
4	Active Tickets	446	The merge function does not seem to run its argument coroutines in parallel	Monad.Coroutine	0.5		defect		new	2010-03-20T03:07:57Z+0000	2010-03-22T03:24:21Z+0000	"Function

{{{
Control.Monad.Coroutine.merge :: forall s m x. (Monad m, Functor s) =>
                                 (forall x. [m x] -> m [x]) -> (forall x. [s x] -> s [x])
                              -> [Coroutine s m x] -> Coroutine s m [x]
}}}

appears to work properly, except that its test in the TestCoroutine module apparently always uses only one CPU core.
"	blamario
4	Active Tickets	450	The substring and parseSubstring primitives could be made more bulky	Combinators			task		new	2010-09-25T20:07:41Z+0100	2010-09-25T20:07:41Z+0100	"The substring and parseSubstring primitives use the bulk operations pourUntil and getPrefixOf only for the top-level string. Then they switch to the old algorithm that checks for overlaps. This is a kludge, it must be possible to generalize the test definition.
"	blamario
3	Active Tickets	449	Try inverting the producer/consumer arguments to seesawNested in pipeG	Streams	0.5		task		new	2010-09-12T04:03:07Z+0100	2010-09-12T04:03:07Z+0100	"The tests begin to fail. This is disturbing and should be investigated.
"	blamario
3	Active Tickets	448	Try the finally tagless approach for shell	Shell	0.5		enhancement		new	2010-04-22T04:18:49Z+0100	2010-04-22T04:18:49Z+0100	"The shell type system should be embeddable using the [http://www.cs.rutgers.edu/~ccshan/tagless/jfp.pdf finally tagless] approach.

Also see http://lambda-the-ultimate.org/node/2438

"	blamario
3	Active Tickets	454	Use Criterion for benchmarking	Monad.Parallel	0.6		defect		new	2010-11-16T03:35:11Z+0000	2010-11-16T03:35:11Z+0000	"Add a Criterion benchmark suite for evaluating the speed of monad-parallel, monad-coroutine and SCC. The former two should be easy, because the existing tests are pretty much already used for benchmarking.
"	blamario
