On Tuesday, 22 January 2013 at 21:14:21 UTC, Freddie Chopin wrote:
On Tuesday, 22 January 2013 at 21:02:32 UTC, Paulo Pinto wrote:
I don't really have much embedded experience besides assembly
programming in the old days (Z80, M68000, x86, MIPS, self
build processor for digital circuits class).
My understanding is that the processors the micro-controler
class, the ones with memory in the order of bytes or
kilobytes, usually C compilers that only implement part of the
ANSI standard, given the hardware constraints.
Meaning just a very small subset of data types is supported,
limited library support and lots of compiler extensions to
make use of the processor and on die ports.
Nothing like this here - you have all types, you have complete
libm, libc and stdlibc++ with everything you need. There are no
compiler extensions other than a typical GCC __attribute__ used
to declare interrupts, which is not really necessary on most
Cortex-M3 chips. These are really powerful chips with
1.25DMIPS/MHz and clocks around 70MHz (ranging from 24MHz to
204MHz)... There's even a dual-core chip - LPC43xx which has
Cortex-M4F (with single precision hardware FPU and some SIMD
instructions) and a Cortex-M0, both running at 204MHz <:
So these are not very much like 8-bit microcontrollers (AVR,
PIC, ...)
That's why I think D would fit such chips quite nice (; Sans
the GC of course... Maybe without exceptions too, but I don't
think that would be possible (it's pretty hard in C++)...
4\/3!!
Thanks for the valuable explanation.