Files
mruby-mruby/mrbgems/mruby-compiler
Yukihiro "Matz" Matsumoto fb5d966a45 mruby-compiler: optimize masgn to generate literals directly into target registers
When all lhs are local variables and all rhs are simple literals
(integers, nil, true, false), generate values directly into target
registers instead of using temporaries and MOVE instructions.

For example, `a,b = 1,2` now generates:
  LOADI_1 R1
  LOADI_2 R2
instead of:
  LOADI_1 R3
  LOADI_2 R4
  MOVE R1 R3
  MOVE R2 R4

Co-authored-by: Claude <noreply@anthropic.com>
2025-12-21 17:26:49 +09:00
..
2025-07-02 07:14:04 +09:00

mruby-compiler

This mrbgem provides the mruby compiler, which is responsible for parsing Ruby code and generating mruby bytecode.

Functionality

The mruby-compiler gem includes the following components:

  • Parser: Translates Ruby source code into an abstract syntax tree (AST).
  • Code Generator: Traverses the AST to produce executable mruby bytecode.
  • mrbc executable: A command-line tool for compiling .rb files into .mrb bytecode files.

Usage

The mrbc (mruby-bin-mrbc) executable will generate compiled binary from Ruby programs via this gem.

Example of using mrbc:

# Compile a Ruby script to bytecode
bin/mrbc my_script.rb

# Run the compiled script
bin/mruby my_script.mrb