On 2010-09-17 10:06:27 -0400, Jacob Carlborg <d...@me.com> said:

Have you thought about what needs to be modified/added yet? Is it basically better support for runtime reflection?

Basically I'm adding the necessary pieces so that DMD can generate object files containing the exact same things an the Objective-C compiler would generate. I am also adding the few necessary syntactic additions to support this. The end result should be as efficient as the Objective-C compiler itself.

One thing I am *not* doing is adding the alien Objective-C syntax to D. Declaring an Objective-C class will look like this:

        extern (Objective-C)
        class NSObject {
                NSString description() @property;
                void perform(SEL selector, NSObject object) 
[performSelector:withObject:];
        }

and for the most part should be semantically equivalent to a regular D class. The only cases where I'm adding to the syntax are those where special things need to be expressed, such as the Objective-C selector when necessary for one of the two methods above.

Most of the work is being done in the glue code that links the frontend to the backend. I'm trying to not affect the semantics of any D construct, simply binding them to the Objective-C runtime where appropriate.

--
Michel Fortin
michel.for...@michelf.com
http://michelf.com/

Reply via email to