对于缺乏堆栈或内存分配*的架构*,最具表现力的编程语言是什么?

Cua*_*due 5 compiler-construction embedded abstract-syntax-tree

我在一个拥有几个字节的空闲RAM的专有音序器上工作; 静态分配几百个字节; 8个寄存器,包括PC; 没有间接(在C中,一个"指针"); 没有堆栈.

没有MOV指令:要M进入K,你必须编写CLX A; ORX M; STX K哪些复杂的依赖解决方案,或至少是优化.许多操作仅适用于特定寄存器:例如,32位右移用于K高位字和M低位字.

所以对我来说,嵌入式应用程序的C选择显而易见,因为没有指针或函数调用是可能的.大多数高级编程语言都有算术表达式,因此这无助于缩小我们的选择范围.

最重要的是绝对最小代码大小,因此优化是关键.

我倾向于将Lisp表达式编译为宏汇编程序的一种形式,因为程序员可以优化自己的高级操作,例如编写XOR指令.

我敢肯定,这不是第一个有这些限制的项目; 过去如何解决这个问题?