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!!