Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

To my knowledge, Apple hasn't submitted Blocks to any standards body, but that doesn't mean that they don't want it adopted by other systems. They've open-sourced libdispatch, which is most useful with Blocks, and it's been picked up for FreeBSD. Unfortunately, Blocks conflicts with the C++0x proposal for lambdas, which itself conflicts with the Objective-C message notation. However, it seems likely that there will soon (on the timescale of language standardization) be reconciliation and a standard notation for lambdas and closures for C and friends. Libdispatch will almost certainly be compatible with that notation, and be available on most *nix systems that are likely to adopt things like C++0x relatively quickly.

In light of that, one could see Blocks as Apple wanting to ensure that at least one closures-for-C implementation starts getting real-world exposure, much as OpenCL was their way of ensuring that there is at least one vendor-neutral GPGPU API, even if it isn't the best possible. If their methods do end up becoming de facto standards , Apple could gain a lot by being the preferred and most mature implementation. If not, there's no real harm to Apple, because their platform is already "different".



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: