On Saturday, 2 March 2013 at 07:16:04 UTC, SomeDude wrote:
On Saturday, 2 March 2013 at 06:50:32 UTC, SomeDude wrote:
Exactly. This fixed subset would be very limited in comparison
to the full language (I can imagine something looking a bit
like a smaller Go, there would probably be no templates at
all, no CTFE, maybe even no exceptions, for instance), but
would be orthogonal, completely stable in terms of spec, and
known to work. It could be defined for other real world usages
as well, like embedding in small appliances.
It would also make it easy to bootstrap the compiler on new
platforms.
I don't see how this would help with proting to different
platofrms at all if you have a cross-compiler.
Yes, the DMD frontend currently isn't really built with
cross-compilation in mind (e.g. using the host's floating point
arithmetic for constant folding/CTFE), but once this has been
changed, I don't see how the language used would make any
difference in re-targetting at all.
You simply use another host system (e.g. Windows/Linux x86) until
the new backend/runtime is stable enough for the compiler to
self-host.
David