November 04, 2010
On 04/11/10 00:51, Walter Bright wrote:
> Michel Fortin wrote:
>> You heard that right: someone is considering writing Cocoa programs
>> because of D!
>
> That's great news!
>
>> I think we should try to attract Cocoa programmers (and would-be Cocoa
>> programmers) by offering them the strengths of D. What are those
>> strengths? Some are things you probably take for given (overloading),
>> others are design by contract, generic programming, nested classes,
>> mixins, integrated unittests and documentation, memory safety, a
>> race-free threading model, did I miss anything? All those good things
>> aren't available in Objective-C and thus can't be used with Cocoa. I
>> want to make those them available to Cocoa programmers. And for this,
>> I need them to work with the Objective-C object model. By making
>> Objective-C objects bind to D semantics, all those feature will "just
>> work" with Cocoa with minimal changes to the frontend (and well
>> written bindings).
>
>
> I don't know O-C. I've never written a line of it. So I'm shooting in
> the dark about the best way to attach it to D.

It's an odd little language, took me forever to pick up even the basics, unlike D/C++/Java/C# etc, everything seems so backwards to me. The following might help clarify somewhat (although it may be incorrect, I'm sure someone will correct me if it is - I am but an amateur when it comes to ObjC).

ObjC has (optional) named parameters, when it does they become part of the method name, eg:

[someObj foobar];
[someObj foobar withString:@"bar"];

is effectively equivalent to (in pseudo-D):

someObj.foobar();
// Where pseudo-D has named parameters, and uses the same method name
// as the Obj-C code
someObj.foobar:withString:(withString="bar");

> I agree with all your goals.
>
> One possibility: simply adopt O-C syntax.

I personally would be against this, I'm sure there are a lot of people who wouldn't be though. D has a really nice, simple syntax - the only syntactic errors are purely my finger missing the ; key etc... I still struggle with Obj-C syntax, heck, you can get Obj-C syntax wrong and it'll still compile with no warnings, then you're left wondering why your app is segfaulting.

-- 
Robert
http://octarineparrot.com/
November 06, 2010
Michel Fortin wrote:
> I'm know I should release things early to let those interested test it and give me some feedback (and create bindings), but I'm not sure whether it should be merged into the trunk so early. With Walter's permission, I could publish my git repository to let people peek at the code. I haven't done so before because it's a clone of the SVN repository and it contains the backend too, which is under a less open license.
> 

You have my permission to do it as long as you don't change the license.

I think you are quite right to release this as an experimental fork until we're sure it's the right approach, rather than jack users around with fundamental changes.
1 2 3
Next ›   Last »