Evaluate Ruby Without Ruby
summary
Claim: Ruby DSL can run without MRI by embedding mruby, producing a single binary either via go-mruby (Go + mruby bridge) or mruby-cli (pure mruby). Built Mitamae (Itamae reimplementation) and shows mruby-cli startup is 33× faster (700 ms → 23 ms). Tradeoffs: go-mruby forces brittle bridging and three-language maintenance; mruby-cli keeps Ruby but requires writing mrbgems in C (example: mrbgem Open3 implementing spawn) and some API features remain incomplete.
AI-written summary · about
chapters (15)
- 0:00Intro
- 1:38Example Ruby DSL for server provisioning
- 2:32How is Ruby DSL implemented?
- 4:31Ruby DSL use case at Cookpad
- 5:55Problem to bootstrap development environment using MRI
- 7:16How can we remove dependency of MRI?
- 8:24Embedding mruby into software
- 9:08How to embed and use mruby
- 11:272 ways to build portable CLI apps configured by Ruby DSL
- 12:56How to run Ruby scripts from Go
- 13:59How to implement Ruby DSL in Go
- 17:38Why did we need Go language?
- 20:37How to implement Ruby DSL with mruby-cli
- 25:20Merits to build CLI apps using mruby-cli
- 26:38Conclusion








