On Thu, Oct 9, 2008 at 1:50 AM, roger peppe 
<rogpeppe@gmail.com> wrote:
On Thu, Oct 9, 2008 at 9:15 AM, Ryan Ingram <
ryani.spam@gmail.com> wrote:
> I don't think what you want is possible if both sides are in STM.
> Other authors have posted solutions where one side or the other of the
> transaction is in I/O, but wholly inside STM it's not possible.
new to both Haskell and STM.
Presumably this result means that it's not possible to implement
any bounded-buffer-type interface within (rather than on top of) STM.
Isn't that a rather serious restriction?
I don't know that it's practically-speaking that serious.  One can write it in IO, using STM.  I think of CSP as I/O anyway, but perhaps my thinking is flawed and dirty from MPI and Erlang "message passing" :-).
Then again, I'm not sure why keeping it in STM is even valuable really.  IO gets the job done right?