Why: Embedded systems nowadays are programmed using assembly or plain C/C++, which make code maintenance and writing complex algorithms difficult. In contrast, Single-Assignment C is both geared for high performance and productivity. SAC is high-level, array-based and functional. In SAC one can express complex computations with simple expressions. Meanwhile, the SAC compiler translates programs down to C with efficient use of processors and conservative use of memory, which makes it suitable to run in embedded systems.
The SACCADE project intends to demonstrate that SAC can bring both high level programming and high performance per watt to embedded systems. To do this, SACCADE will bootstrap the Saccharose package.