OSCON 2012 notes

Michel Fortin michel.fortin at michelf.ca
Sat Jul 21 06:47:06 PDT 2012


On 2012-07-21 06:48:57 +0000, Paulo Pinto <pjmlp at progtools.org> said:

> We need something like std.database for web development, which as far as
> I know is currently on hold.
> 
> WinRT support would also be a nice feature. Need to spend some time 
> checking how to work with type libraries.

The web is a low-hanging fruit for D. The language is already very 
suitable for it: being able to talk to C APIs, socket IO, and starting 
external processes plenty enough. All it needs really is some library 
code.

Supporting WinRT, or Cocoa, in any pleasant way is a much bigger 
project. Both these APIs use OO extensively and, while they are 
accessible from C, dealing with such code using C functions is a pain. 
I'm convinced that what D needs is direct support for new object models 
in the language. The good news is that semantically both the WinRT 
model and the Cocoa model of an object are close enough to the D model 
-- single inheritance, one root object -- and I've shown with my 
experimental DMD/Objective-C branch[1] that such a model integrates 
quite well to D despite the differences. In fact, WinRT, being based on 
COM, would probably map better than Cocoa.

 [1]: http://michelf.ca/projects/d-objc/

So in short, to be successful in GUI development, D need to support the 
native object model of the GUI platform it runs on without having to 
jump through hoops and without having a complicated layer of bindings. 
Using D code within a GUI app should be as easy as using C++ code 
within it would be. Otherwise, you cannot really compete.

And also, more and more it'd require ARM support to be competitive in 
the GUI area.

Compare those requirements to those of web development, were almost all 
servers are x86, where C, socket IO, and execution of external 
processes is all that's needed interface with other components, and 
you'll see that web dev is truly the low-hanging fruit in terms of 
market for D.

-- 
Michel Fortin
michel.fortin at michelf.ca
http://michelf.ca/



More information about the Digitalmars-d mailing list