On 8 April 2013 19:26, Jacob Carlborg <doob@me.com> wrote:
On 2013-04-08 10:31, Manu wrote:

D for embedded, like PROPER embedded (microcontrollers, or even
raspberry pi maybe?) is one area where most users would be happy to use
a custom druntime like the ones presented earlier in this thread where
it's strategically limited in scope and designed not to allocate.
'Really embedded' software tends not to care so much about portability.
A bigger problem is D's executable size, which are rather 'plump' to be
frank :P
Last time I tried to understand this, one main issue was objectfactory,
and the inability to strip out unused classinfo structures (and other
junk). Any unused data should be stripped, but D somehow finds reason to
keep it all. Also, template usage needs to be relaxed. Over-use of
templates really bloats the exe. But it's not insurmountable, D could be
used in 'proper embedded'.

I agree with the templates, Phobos is full of them. Heck, I created a D-Objective-C bridge that resulted in a 60MB GUI Hello World exeuctable. Full of template and virtual methods bloat.

Haha, yeah I remember discussing that with you some time back when we were discussing iPhone.
Rather humorous ;)

I do wonder if there's room in D for built-in Obj-C compatibility; extern(ObjC) ;)
OSX and iOS are not minor platforms by any measure. At least support for the most common parts of the Obj-C calling convention. D doesn't offer full C++ either, but what it does offer is very useful, and it's important that it's there.