ruby-interoperability icon indicating copy to clipboard operation
ruby-interoperability copied to clipboard

Ruby Mixture with other Programming Languages

[RubyNLP | RubyDataScience | RubyML]

The list is under heavy construction!

Ruby communicates with other Languages

Ruby Mixture with other Programming Languages

  • Extending Ruby
    • C/C++
    • GNU Octave
    • Go
    • Java
    • JavaScript
    • Julia
    • Nim
    • Python
    • R
    • Rust
  • Embedding Ruby
  • Inter-process Communication
  • Crosscompilation
  • License

Extending Ruby

C/C++

GNU Octave

  • octave-ruby - Ruby interface to the Octave interpreted language. [dep: GNU Octave]

Go

  • http://rubykaigi.org/2015/presentations/mmasaki/
  • https://c7.se/go-and-ruby-ffi/

Java

  • rjb - Ruby-Java bridge for the CRuby implementation.

JavaScript

  • https://github.com/rails/execjs
  • https://github.com/cowboyd/libv8
  • https://readysteadycode.com/howto-execute-javascript-code-with-ruby

Julia

  • https://github.com/mrkn/ruby-julia

Nim

  • http://bootstrap.me.uk/programming-languages/2017/07/09/nim-for-the-discerning-rubyist.html

Python

  • https://github.com/mrkn/pycall.rb

  • https://github.com/raineszm/rubypython

  • https://github.com/steeve/rupy

  • https://github.com/whymirror/unholy

  • RbCall - calling Ruby from Python processes.

R

  • https://github.com/mrkn/rcall
  • rinruby - integrates the R interpreter in Ruby, making R's statistical routines and graphics available within Ruby. R
  • https://github.com/alexgutteridge/rsruby
  • https://github.com/clbustos/Rserve-Ruby-client
  • https://github.com/jtprince/rserve-simpler

Rust

  • http://undefined-reference.org/2016/05/14/writing-rubygem-in-rust.html
  • https://github.com/steveklabnik/rust_example
  • https://forums.sketchup.com/t/native-ruby-extension-in-rust/26705
  • https://github.com/d-unseductable/ruru
  • https://usehelix.com/
  • http://rubykaigi.org/2015/presentations/wycats_chancancode/
  • https://deliveroo.engineering/2019/02/14/moving-from-ruby-to-rust.html
  • https://samphippen.com/minimum-viable-gem-free-calling-rust-from-ruby-example/

WebAssembly

  • https://github.com/wasmerio/ruby-ext-wasm/

Embedding Ruby

  • mruby - Lightweight embeddable Ruby implementation.

Inter-process Communication

  • - xxx.

Crosscompilation

  • https://github.com/opal/opal

License

Creative Commons Zero 1.0 Ruby Interoperability by Andrei Beliankou and Contributors.

To the extent possible under law, the person who associated CC0 with Ruby Interoperability has waived all copyright and related or neighboring rights to Ruby Interoperability.

You should have received a copy of the CC0 legalcode along with this work. If not, see https://creativecommons.org/publicdomain/zero/1.0/.