PicoRuby is an alternative mruby implementation which is:
- Small foot print
- ROM: 256 KB (depending on build config)
- RAM: 128 KB or less (depending on app code)
- (Figures in 32 bit architecture)
- Portable
- Depends on only standard C library such as glibc, Newlib or Newlib-nano
- Reference microcontroller boards
- Raspberry Pi Pico - Arm Cortex-M0+, 264 KB RAM, 2 MB Flash
- mruby/c (mrubyc/mrubyc)
- Another implementation of mruby virtual machine
- Prerequisites
- C toolchain
- git
- ruby (should be CRuby)
git clone --recursivethis repositorycd picorubyrakebuilds binaries for your machine- PicoRuby basically uses mruby's build system as it is
rake -Tshows available subcommands
See an example: build_config/r2p2-cortex-m0plus.rb
rake command will make three kinds of executable binary
- bin/picorbc
bin/picorbc path/to/source.rbmakespath/to/source.mrbthat is VM code runs on an mruby-compatible virtual machine
- bin/picoruby
bin/picoruby source.rbexecutes Ruby just like normalrubycommand- You can also do like
bin/picoruby -e 'puts "Hello World!"'
bin/picoruby --verbose -e 'puts "Hello World!"' shows debug-print like this:
(Replace [path/to/]mmruby with bin/picoruby --verbose in mind. It's an old name)
PicoRuby is still developing halfway towards finishing as of 2024.
See implementation roadmap on issue/6
Fork, patch, then send a pull request.
Part of this project was coded by Monstarlab with the support of the Ruby Association Grant Program 2020 and 2021.
See also picoruby/picoruby/wiki.
Copyright © 2020-2024 HASUMI Hitoshi. See MIT-LICENSE for further details.
Copyright © 2020-2021 Monstarlab. See MIT-LICENSE for further details.