Go Down

Topic: Functional programming on Arduino Uno (Read 2085 times) previous topic - next topic


Hi all,
The Arduino architecture is hard for functional programming, with following reason.  :smiley-sad-blue:

  • We can't use smart pointer on the Harvard architecture.

  • 16-bit address bus is bad for smart pointer.

  • 2 kB memory is too small for GC or malloc heap.

  • We can't construct any dynamics values without malloc heap.

However, ATS2 language http://www.ats-lang.org/ is easy to write code for the architecture, and the ATS2 functional program running on it is safe using dependent type and linear type.  :smiley-eek: Also ATS2's linear type realizes safe programming without any GC and any malloc. We believe this ATS2 characteristics is good to design IoT devices http://fpiot.metasepi.org/.  $)

About the demo application, please see following links.

Go Up