Is modern D ready for "embedded first" paradigm?

Denis Feklushkin feklushkin.denis at gmail.com
Fri Dec 8 19:01:16 UTC 2023


On Thursday, 12 October 2023 at 07:06:15 UTC, Dukc wrote:

> If we're talking about a a bare-metal real-time application in 
> a microcontroller, honestly no. D can do this sort of thing but 
> it's not currently it's strong area. You're almost without 
> library support in those platforms. Phobos does work with 
> `-betterC` (or generally without a full-featured DRuntime) but 
> it means continuously dealing with all sorts of 
> incompatibilities and corner cases.

First (and most importand) step to achieve support of bare-metal 
platforms is druntime implementation.

Before, I successfully implemented druntime hacks for checking 
possibility of work D (not betterC!) on STM32 platform ("Hello, 
world!" and druntime unittests are passed): 
https://github.com/denizzzka/d_c_arm_test

Unfortunately, without changes to the existing druntime code 
organization it seems to impossible to support different 
non-mainstream architectures. And, at first, this applies to 
embedded ones.

Therefore, please support (or give constructive criticism 
feedback) this initiative:
https://forum.dlang.org/post/jdfwovvqdcusjphehwzx@forum.dlang.org 
- this link explains everything in more detail
https://github.com/dlang/dmd/pull/15822 - here is PR with 
additional info



More information about the Digitalmars-d mailing list