Am Sat, 11 Oct 2014 17:37:20 +0000 schrieb "Kevin Lamonte" <kevindotlamnodoto...@gmail.com>:
> On Saturday, 11 October 2014 at 06:59:33 UTC, Mike wrote: > > Hello, > > > > 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. You could also have a look at https://github.com/jpf91/GDC/tree/microD Right now it's just an experiment and I don't know if anything will be upstreamed.