Squirrel/imp(2013.08〜)
最近 .netMF や mruby など、次世代の組み込み用の枠組みの話題が散見されるようになってきた。
Python 対 Ruby
組み込みpython(?) 対 mruby 対 .netMF
といった関係になるのだろうか。
.netMF と mruby を比べると、共に中間コードを実行する、オブジェクト指向言語、ほぼ同程度のハードウエアリソースが必要など、それなりに似ている。pyMite は8ビットCPU版も存在するように若干守備範囲が違う。また、Lua の組み込み版 eLua や Squirrel もある。
.netMF mruby 組み込みpython
(Python-on-a-Chip)eLua Squirrel 実行の方法 VM 主な記述言語 C# Ruby PiMite?python? クラス ○ ○ ○(?) × ○ GUIライブラリ 標準あり なし(独自実装) ? CPU ARM ARM,RX AVR?ARM? ARM(M3) サイズ? 基本的には1つ(?) ミニマル,スタンダード,フル
の3つ? サイズ?
ROM/RAM512K/128K(?) 280K/120K
(IF誌2013.02.p112より)55K/8K (C++で6,000行) MMU 不要 ? ? デバッガ VisualStudioに包含 未 ? 割り込み 直接は記述できない(?) 未 ? マルチスレッド
(タスク)preemptive 未 nonpreemptive nonpreemptive nonpreemptive 移植性 梅 松 竹 ○初期化 ○"hello world"(動画) ○定時間間隔カウントアップ(動画) ○マルチスレッド(?)外部LED点滅(動画) ○ノードを使う ○ノードを使う(動画) ○温度センサ情報を xively にアップする(動画) ○まとめたもの ・近JASAセミナ資料のSquirrel部分 ○Web情報 ・Squirrl 日本語wiki http://ja.wikipedia.org/wiki/Squirrel ・electric imp electric imp ・比較 組み込み向けオブジェクト指向言語はどうよ(@doilab.net)