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