On Thu, Sep 3, 2009 at 8:15 AM, Uriel wrote: > On Wed, Sep 2, 2009 at 4:20 PM, Devon H. O'Dell > wrote: > > 2009/9/2 Uriel : > >> On Wed, Sep 2, 2009 at 10:04 AM, Anant Narayanan wrote: > >>> Mac OS 10.6 introduced a new C compiler frontend (clang), which added > >>> support for "blocks" in C [1]. Blocks basically add closures and > anonymous > >>> functions to C (and it's derivatives). Full details with examples are > in the > >>> linked article. I think the feature is quite elegant and might be > useful in > >>> cases where you want map/reduce like functionality in C. > >> > >> Er., I might be more dumb than usual, but why on earth would you > >> need/want this garbage to get map/reduce functionality in C? > >> > >> To me it seems the typical "lets come up with some cute 'feature' and > >> then we will figure out how to hype ourselves all the way to hell". > > > > I don't see why you'd particularly need / want this in C, but the > > argument here seems silly given that you've stressed your affinity to > > other languages that implement closures / anonymous functions. > > My affinity is to language that display *conceptual integrity*. > > > > In any case, implementing closures in C isn't too difficult, and if > > you want to return a function, just return a pointer to it. > > Exactly, I still fail to understand the point of this "feature", > function points have worked fine for ages, but then I never understood > any religion, and that is what Apple seems to be all about. > The blocks aren't interesting at all by themselves, I totally agree with that. However what they do to let you write a function inline, that can be pushed to another function, to be executed on a concurrent FIFO, is where the real power comes out. I'm not 100% sure why the heck they did it this way, which is totally different from any other version of concurrent programming setup I've seen, except maybe that Apple likes to "think different"? I'm not sure I think this stuff is "insanely great" though. I'm planning to try using it before judging it further though. Dave > > Peace > > uriel > >