PicoRubyを理解する1

PicoRuby
A Ruby interpreter implementation for one-chip microcontrollers - PicoRuby

ちゃんと中身を理解できてなかったので、コードや資料を読んで理解したい。

特にパーサーやVMの周りをどうやって小さくできているのか。

まずは基礎知識から。

公式情報

PicoRuby Documentation
API documentation

羽角さんの資料

2025

MicroRuby: True Microcontroller Ruby
RubyKaigi 2025, #rubykaigi
RubyKaigi 2025 で発表したMicroRubyとはなんだったのか
MicroRuby: True Microcontroller Ruby というタイトルの発表をしました。

MicroRubyとは?

Ruby会議には参加できてないので、詳細はブログの記事からの理解ですが、以下のような、図のような感じなのかと理解しました。コンパイラをカスタムして準備してしまうのが驚くべきところ。パーサーもPrismに置き換わっているらしい。

で、コンパイラの周りやmrbgemの扱いなどは、やはりコードを追っていかないといけない。

2024

Unlock The Universal Parsers: A New PicoRuby Compiler
RubyKaigi 2024, #rubykaigi
令和の隙間産業——PicoRubyはどこから来てどこへ行くのか - HASUMI Hitoshi - Rabbit Slide Show
Presentation slide for 大阪Ruby会議04
Ruby Prize 2021 最終ノミネート者 羽角 均 インタビューRubyPrize
Rubyコミュニティの「個人賞」
Matz:「そっか、256KBあったらmryubyのVMだけなら動くのか。」

ESP32でPSRAM 8M乗ってるとmrubyのパーサ/コンパイラも込みで動かせた実績あるので、Raspi PicoでもPSRAM搭載ボードなら行けるはず。

羽角さん「僕としては、PicoRubyとかmrubyのエコシステムを広げていくのに、PicoRubyコンパイラを作っただけじゃ面白くなくて、使われないと楽しくないわけですよね。」

とても共感。C書けるなら、Cで書いてしまっても良いのだけど、せっかく環境を作るからには他の人に使ってほしい。羽角さんは一人でエコシステムまで作ろうとしててほんとすごい。

n月刊ラムダノート Vol.4, No.1(2024)
計算機好きのための技術解説情報誌 エヌゲッカンラムダノート(不定期刊行)106ページ A5判 紙書籍は1色刷 2024年2月6日 第4巻第1号/通巻7号 発行 目次 #1 手を動かして学ぶストリーム処理入門(中谷翔)#2 WebAssemblyの制約を越える(齋藤優太) #3 PicoRubyといっしょに学ぶ、プログラミング言語が電気回路を動かす仕組み(羽角均)

買って読んでみた。

基本的なところからとても丁寧に書いてあるので、PicoRubyちゃんと使いこなしたい方は必読と思いました。

その他

mruby/c and data-flow programming for small devices
RubyKaigi 2025, #rubykaigi

https://www.slideshare.net/slideshow/mruby-c-and-data-flow-programming-for-small-devices/278614229

mruby/cについて、田中先生のスライドが公開されていた。

Node-REDから使えるようにした、というお話。

次のステップ

PicoRubyのコードを読む。

Read more

2025年の振り返りと2026年の抱負

2025年の振り返りと2026年の抱負

明けましておめでとうございます。今年も無事新年を迎えられてありがたい限りです。 昨年は色々対外的な活動も増やしたり、自分の趣味プロジェクトも新しく始めたりしたので、活発な一年だったと思います。 今年は仕事始めて20周年でもありますし、色々頑張り時な年だと思うので、抱負と合わせて、昨年の振り返りを残しておきたいと思います。 2025年振り返り 2025年は、4月までは仕事のほうがかなり忙しく、日々仕事で忙殺される日々でした。 2/2 Tokyu.rb新年会2025 まだ忙しい季時期でしたが、地方出張前に荷物抱えて参加した記憶があります。 Tokyu.rbは、みんなで美味しいもの(主に肉)をいただく集まりなのですが、そこで関西Ruby会議のことを聞いたことが、この後の動きの伏線になりました。 5月になって仕事が落ち着いてきたので、一念発起して久しぶりに地域Ruby会議へのプロポーザルを送ったのでした。 5/26 PicoPicoRuby #1 待望のmruby関連の勉強会!ということでウキウキで参加しました。 以降も月イチで安定して開催されており、私の活動のモチ

By kishima
電子工作遍歴をたどる(2)

電子工作遍歴をたどる(2)

前回の話のつづきです。 作例5 ラズパイとGroveによる音楽プレーヤ 2017/08ごろ ラズパイで遊び始めて、そろそろ単なるミニPCとしてではなく、いろいろ電子工作っぽいことをやってみたくなってきました。 そのころSeeedのGroveというものを知って、これなら初心者でも色々電子デバイス試せる!となって色々買ってきて作ったのがこちらです。 A first step to Raspberry Pi project | Kishima blogThis was a first step to Raspberry Pi project done in last year. RaspiMusicServer This an…Kishima blogkishimaGitHub - kishima/RaspiMusicServer: An music server on Raspberry pi and ArduinoAn music server

By kishima
Family mruby OS:FreeRTOSベースのMicroRubyマルチVM構想

Family mruby OS:FreeRTOSベースのMicroRubyマルチVM構想

この記事は、mrubyファミリ (組み込み向け軽量Ruby) Advent Calendar 2025の12/25の記事です。25日の枠が空いていたので、滑り込ませていただきました。 今日は私が最近取り組んでいる個人プロジェクトであるFamily mrubyとそこから発展したFamily mruby OSについて紹介したいと思います。 開発に至る経緯 Family mrubyは2019年から開発着手したプロジェクトです。2020のRubyKaigi Takeoutでも初期型について発表しました。 Family mrubyとは? Family mrubyKishima’s projectsKishima Craft Works 今は昔、子供が最初に触れるプログラミング言語といえば、BASICという時代がありました。 制約は多いですが、パソコン以外にも、MSXやファミコンでBASICができるFamily BASICという製品もあり、そこからプログラミングの面白さを知り、プログラマーになった方もたくさん居られると思います。 そして現在は無料で大抵のプログラミング言語の開発環境

By kishima