Functional programming on Arduino Uno

143 views
Skip to first unread message

Kiwamu Okabe

unread,
Oct 19, 2014, 9:20:21 AM10/19/14
to ats-lang-users, ats-lang-users
Hi all,

We had “Metasepi team meeting #19” at Open Source Conference 2014 Tokyo/Fall.

http://www.ospn.jp/osc2014-fall/

I explained ATS2 demo application running on Arduino Uno hardware at
the meeting.
I think you know the Arduino Uno. It has the following specification.

* Microcontroller: ATmega328 (Harvard architecture 8-bit RISC)
* Flash Memory: 32 kB
* SRAM: 2 kB
* Clock Speed: 16 MHz

The Arduino architecture is hard for functional programming, with
following reason.

* 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.
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.

* Blog post: http://www.metasepi.org/en/posts/2014-10-19-osc-tokyo.html
* Demo movie: http://www.nicovideo.jp/watch/sm24680530
* Slide: http://www.slideshare.net/master_q/20141019-osc-tokyoats
* Source code: https://github.com/fpiot/arduino-ats

Thank's,
--
Kiwamu Okabe at METASEPI DESIGN

Hongwei Xi

unread,
Oct 19, 2014, 10:51:30 AM10/19/14
to ats-lan...@googlegroups.com
Thanks a lot!

I am now collecting news items for the ATS
community.

--
You received this message because you are subscribed to the Google Groups "ats-lang-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ats-lang-user...@googlegroups.com.
To post to this group, send email to ats-lan...@googlegroups.com.
Visit this group at http://groups.google.com/group/ats-lang-users.
To view this discussion on the web visit https://groups.google.com/d/msgid/ats-lang-users/CAEvX6dkFmAzc3ZvLDfQbRbL%3DeJTYTo0VdLOF8X57exwxW4fBzA%40mail.gmail.com.

Reply all
Reply to author
Forward
0 new messages