Sat Jan 4 20:31:33 CET 2020
New sm.txt notes
This probably needs a separate blog thread. I'm shuffling around many
ideas, but I really want to move this into an actual system. I'm
tired of writing C for microcontrollers, and Rust is not the solution
in my case: I want something more model-based, macro-like.
I still want to "keep Haskell out of embedded". Only as compiler,
where it should be the main tool.
- limited nesting by making stack frames explicit
- A way to generate a static C program from a higher level functional
description. Something that can do:
- Automatic async-style conversion
- Smart re-use of closures (i.e. flat state structure where state
updates are mutations, not copying in a new activation record).
- I want lisp-like syntax and constructs that can be easily
implemented in C, but explicitly no arbitrary closures or
- Some way to formulate this so it makes sense on FPGA as well. Where
- messages are either actual bulk data lines, registers, or
references to data stored in memory
- tasks are state machines, or stored programs on a CPU
- Erlang as test target. Either Core erlang, or just an interpreter
for something simpler, written in Erlang proper.