RFC: Move runtime hook definitions to a .di file in druntime
Mike via D.gnu
d.gnu at puremagic.com
Sat Oct 11 17:12:45 PDT 2014
On Saturday, 11 October 2014 at 17:37:22 UTC, Kevin Lamonte wrote:
> On Saturday, 11 October 2014 at 06:59:33 UTC, Mike wrote:
>> In my continued, though stalled, effort to try and make
>> minimal runtime for embedded systems, I've tried to find a way
>> for users to know at compile-time if a feature of the runtime
>> is supported or not, and more importantly, if they are
>> explicitly or implicitly using an unsupported feature.
> I have started work myself on a D kernel (using gdc based on
> 2.065 as compiler) and am going through the process of figuring
> out how the D runtime works. I have looked at XOMB and Adam
> Ruppe's minimal-d, and saw the presentation online on running D
> on ARM.
> I can boot and call D functions, but most of the D language
> remains unavailable. I am locating the various dependencies of
> object.d(i) now, and hope to be able to soon be able to at
> least complete a link with D code that has structs and enums.
> I am currently using 2.065 druntime, adding only those bits of
> object.d that the compiler is directly referencing, and
> versioning my changes with version(BareBones).
> Is your work online somewhere? Would it be OK if I took a
> peek? Mine just started (seriously, it is just hello world)
> over at: https://github.com/klamonte/cycle
> I would really like a micro-runtime that supports the D dialect
> minus GC, Threads, synchronization, OS APIs, and i386/amd64
> arch-specific things like atomic operations. So far (crossing
> fingers) it seems like such a thing is only about 5-10 kloc.
Sounds like you you and I are after pretty much the same thing.
I'm not really trying to build anything, like a kernel, just yet.
Rather, I'm just trying to get a decent runtime built so we can
all have a reasonably polished language to work with.
You can find my work here:
https://github.com/JinShil/druntime_level_0. I'm afraid it's not
any further along then yours. I actually became quite
discouraged and stalled. I'm trying to explore other options,
hence this post.
More information about the D.gnu