COS - The C Object System (ObjC + CLOS inspired)(ldeniau.web.cern.ch)
ldeniau.web.cern.ch
COS - The C Object System (ObjC + CLOS inspired)
http://ldeniau.web.cern.ch/ldeniau/html/cos-oopsla09-draft.pdf
3 comments
Don't have time to investigate the C99 magics in COS. But MSVC++'s implementation of several c99 features are not compatible with normal interpretations (gcc, icc and clang).
Right. That's what I was hoping to work around by adding an MSVC-specific code generation path to COS, but I didn't figure it out.
Is there a tutorial or getting started or some examples around ?
Does C99 imply it will compile with gcc (current builds on OSX, I think gcc 4.x).
The homepage can be found here: http://ldeniau.web.cern.ch/ldeniau/oopc.html
It's all C99 compatible, and yet it appears to have support for closures, message passing, multimethods, generics, autorelease pools, exceptions, KVO/KVC, pre and post conditions for methods, and is apparently faster than Objective-C (see benchmarks in the paper).
It's all C99 compatible, and yet it appears to have support for closures, message passing, multimethods, generics, autorelease pools, exceptions, KVO/KVC, pre and post conditions for methods, and is apparently faster than Objective-C (see benchmarks in the paper).
Microsoft does have their own incompatible implementations of the necessary features in C++ mode, so theoretically it should be possible to adapt COS to build on both C99 and MSVC++. I never got it working, though. (I didn't spend many evenings on it either...)