-
Notifications
You must be signed in to change notification settings - Fork 37
BetterC for Mir
Ilya Yaroshenko edited this page Mar 6, 2017
·
1 revision
- There are two kinds of betterC libraries
- Precompiled betterC library with
extern(C)
ABI and optionally D ABI. Good practice is to add C headers. Example: https://github.com/tamediadigital/hll-d. - Generic betterC library that can be used to write precompiled betterC libraries. Example:
mir-algorithm
.
- No DRuntime linking dependencies
- No GC
- No classes
- No core.thread, low level mir-thread should be created instead
- No core.math / std.math, mir-math can be used instead.
- No core.cpuid,
mir-cpuid
can be used instead. - No module constructors, destructors.
extern(C)
functions can be used instead. - No
shared
,__gshared
can be used instead. - No std.random, mir-random can be used instead.
- No std.algorithm, std.range and many other Phobos modules.
mir-*
libraries can be used instead. - No std.experimental.allocator, we need to fork it!
- No one line array operations,
mir.ndslice.algorithm
can be used instead.
- Approved Phobos modules
- std.traits (100%)
- std.meta (95%)