Mid-term vision review

Mike via Digitalmars-d digitalmars-d at puremagic.com
Fri Apr 3 18:18:23 PDT 2015


On Friday, 3 April 2015 at 16:41:14 UTC, David Nadlinger wrote:
> On Friday, 3 April 2015 at 15:07:57 UTC, Andrei Alexandrescu 
> wrote:
>> On 4/3/15 3:10 AM, Andrea Fontana wrote:
>>> It would be great to have dmd on embedded platforms.
>>
>> I agree. We just don't have the champion for that yet. -- 
>> Andrei
>
> I might obviously be biased, but to be honest I don't see much 
> value in starting to port a largely obsolete backend to a whole 
> new processor architecture.
>

I see a benefit in bringing DMD to an embedded platform: To 
suggest, experiment with, and introduce changes to the 
frontend/runtime that benefit all compilers and embedded 
development in D.  Such a task isn't one for an embedded 
champion, however, it needs a compiler champion.  We can't really 
get serious about building embedded systems in D until there is 
better compiler/runtime support.

There are two impediments to this:
(1) A strategy identifying a way forward.  How do we modularize 
the language, and how do we implement that modularization?  My 
suggestions have not been very popular, but I enthusiastically 
welcome suggestions.
(2) Compiler hacking skills necessary to implement those changes 
without stirring the aversion to change.

I have worked on this, but I failed while trying to modify the 
compiler, and I've been discouraged by suggestions that we don't 
want to "shuffle the deck".  Perhaps in the next few months I'll 
try to get some conversations started around this, but I'm still 
exploring other alternatives at the moment.

Also, there may not be any need for changes to the backend.  The 
Intel Galileo [1] is a Pentium-based Quark MCU [2], and the Intel 
Edison [3] is a dual-core Atom CPU.  Walter already said he 
thinks DMD might be able to program the Quark.  These aren't 
really "micro"controllers as they have an abundance of resources 
compared to the ARM Cortex-M and Atmel AVRs, but it has it's 
place in the ecosystem.

Also, there is no reason one can't use their desktop PC to 
experiment.  I see modularization of the language benefiting all 
domains, and I think if it existed, we'd see those features 
exploited in many interesting ways.

Mike

[1] - Intel Galileo - 
http://www.intel.com/content/www/us/en/do-it-yourself/galileo-maker-quark-board.html
[2] - Intel Quark - 
http://www.intel.com/content/www/us/en/processors/quark/intel-quark-technologies.html
[3] - Intel Edison - 
http://www.intel.com/content/www/us/en/do-it-yourself/edison.html





More information about the Digitalmars-d mailing list