Current state of "D as a better C" (Windows)?
Dejan Lekic
dejan.lekic at gmail.com
Sun Jan 26 07:32:30 PST 2014
On Wednesday, 22 January 2014 at 02:18:43 UTC, Vladimir Panteleev
wrote:
> Hi,
>
> What's the current situation of using D without Phobos/Druntime?
>
> Sometimes, it's quite useful to be able to use D to create tiny
> EXEs/DLLs. For example, create simple DLL plugins that will be
> loaded into non-D programs, or even not have a 50-line program
> take half a meg. Additionally, some tasks require injecting a
> DLL systemwide (into every running process), so it is critical
> to minimize the impact by being as unintrusive as possible and
> having a minimal overhead.
>
> I've started a "framework" for this purpose a while ago[1], but
> I heard of people starting similar projects since then and I
> think they've gotten further than me. Would there be any
> interest in collaborating and turning this into a community
> project?
>
> I think some goals would be:
> - A "runtime" (object.d) which provides either stubs for the
> current compiler hooks, or implementations with minimal
> dependencies
> - A "standard library" which does not require runtime support,
> but can also be used when using Druntime (as a GC-free
> alternative to Phobos)
> - Using MSVCRT on 32-bit as well
> - Options to enable/disable various runtime features? For
> example, a project may want to use exceptions (which requires
> ClassInfo) but not the GC.
> - Support for the Unilink linker? I think it is better at
> generating smaller binaries that OPTLINK.
>
> There is also some ongoing work on the -betterC switch[2],
> which I'm quite excited about, but it seems to be currently
> blocked on waiting for the next DMD release as the changes[3]
> might break a lot of code.
>
> [1]: https://github.com/CyberShadow/SlimD
> [2]: https://d.puremagic.com/issues/show_bug.cgi?id=11881
> [3]: https://github.com/D-Programming-Language/dmd/pull/2561
There was a minimal runtime library project somewhere on
Bitbucket if I remember. I think the goal is the same. You could
borrow some code from there perhaps.
In general I totally agree with you. I wanted to do the same, but
decided to wait for allocators...
More information about the Digitalmars-d
mailing list