From mboxrd@z Thu Jan 1 00:00:00 1970 MIME-version: 1.0 Content-transfer-encoding: 7BIT Content-type: text/plain Date: Wed, 2 Sep 2009 08:26:51 -0700 From: Roman V Shaposhnik In-reply-to: <3e1162e60909020807t3164e42fvee3b6e5e4671743b@mail.gmail.com> To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net> Message-id: <1251905211.16936.3261.camel@work.SFBay.Sun.COM> References: <09650C1A-A4C8-4030-81D6-9AC8913970A2@kix.in> <3e1162e60909020807t3164e42fvee3b6e5e4671743b@mail.gmail.com> Subject: Re: [9fans] "Blocks" in C Topicbox-Message-UUID: 5f069536-ead5-11e9-9d60-3106f5b1d025 On Wed, 2009-09-02 at 08:07 -0700, David Leimbach wrote: > Has anyone actually looked at the spec Yes. Well, I know I did ;-) > I've actually looked at these, and used em a little bit. They're not > at all as bad as I once thought they could be, and the reason they're > there is to work with a concurrency framework onto which blocks can be > scheduled to run on various queues, to do concurrent programming. Right-O. In fact, blocks are particularly, how shall I put it, "congruent" to the most promising C parallelization framework to date: Cilk. > Does it succeed in the goal of making it possible to do lockless > programming of concurrent applications? Yes, there's several rather > interesting examples showing the concurrent computation of all the > cells in Conway's Life for example. I'd say this beats the snot out > of coding with pthreads. One again, have you tried Cilk for exactly this kind of thing? I'd be curious to know your opinion on how what you see in SL compares to it. > Blocks themselves are really not terribly useful, you need the > libdispatch library to make the real value in them come out, which > does all the queue management by talking to the subsystem of Snow > Leopard called "Grand Central Dispatch". Could you, please, send me a pointer to the API docs? Off list, perhaps? Thanks, Roman.