SlideShare ist ein Scribd-Unternehmen logo
1 von 10
Ruby と C# をつなぐ
第78回 Ruby関西 発表資料
FUNABARA Masao - @107steps
概要
自己紹介
ruby-csharp_script
Rubyから C# で動かすデモ
将来
課題
まとめ
自己紹介
@107steps(twitter)
舩原 理生 (FUNABARA Masao)
個人事業主
仕事ください(Ruby/C/C++/C#/Xamarin)
ブログ( https://www.masoo.jp/blog )
Ruby舞鶴やっています
https://ruby-maizuru.connpass.com/
舞鶴の人いたら一緒に勉強会しましょう。
ruby-csharp_script
https://github.com/masoo/ruby-csharp_script
Ruby から C# を扱いたくて作ったライブラリ
Roslyn の薄い Wrapper
(Microsoft.CodeAnalysis.CSharp.Scripting を Wrap)
COM に登録して使う
それをさらに Wrap した gem も公開した
初期版をこの間リリース v0.1
Wix Toolset でインストーラー作った
ruby-csharp_script デモ
ruby-csharp_script デモ
将来
C# のReflectionを使って、
DLL/クラスを解析して、 Ruby 側で
C# のオブジェクトを Ruby のコードっぽく生成したい
.Net の DLL として組み込んで、
外部の ruby を使って、
自身のインスタンスを
いじれるようにしたい
外部 DLL の呼び出しにも対応したい
ruby-csharp_script デモ
課題 (分かる人は教えてください)
NuGet 依存関係
最新版の Roslyn を組み込んだ DLL 群を
使おうとするとマイナー番号違いで
起動しない
( app.config いじっても Ruby でダメ )
Ruby 2.4 で起動しない(今日のデモは
2.3.3)
インストーラーからの COM 登録方法
現状は regasm を呼び出している
まとめ
Ruby から C# にアクセスできる
ライブラリ作ってる
デモした
COM/Win32Ole がらみっぽい謎のエラーつ
らい
簡単に Ruby <-> C# をできるようにしたい

Weitere ähnliche Inhalte

Was ist angesagt?

Iron rubyとsinatraで作るデスクトップアプリ
Iron rubyとsinatraで作るデスクトップアプリIron rubyとsinatraで作るデスクトップアプリ
Iron rubyとsinatraで作るデスクトップアプリYamamoto Kazuhisa
 
Rubyコミッタのいる開発いい話
Rubyコミッタのいる開発いい話Rubyコミッタのいる開発いい話
Rubyコミッタのいる開発いい話Kenichi Murahashi
 
20091119_sinatraを使ってみた
20091119_sinatraを使ってみた20091119_sinatraを使ってみた
20091119_sinatraを使ってみたngi group.
 
コマンドライン使いもLibreOffice
コマンドライン使いもLibreOfficeコマンドライン使いもLibreOffice
コマンドライン使いもLibreOfficeKiwamu Okabe
 
mrubyボードを使って こんなことしてみました Kansai.mrb 2014 dec
mrubyボードを使って こんなことしてみました Kansai.mrb 2014 decmrubyボードを使って こんなことしてみました Kansai.mrb 2014 dec
mrubyボードを使って こんなことしてみました Kansai.mrb 2014 decYoshito Tanaka
 
Rubyで.netを扱う
Rubyで.netを扱うRubyで.netを扱う
Rubyで.netを扱う107steps
 
Cコンパイラの改造(未)
Cコンパイラの改造(未)Cコンパイラの改造(未)
Cコンパイラの改造(未)7shi
 
実はこんなこともできる Fireworksの裏技
実はこんなこともできる Fireworksの裏技実はこんなこともできる Fireworksの裏技
実はこんなこともできる Fireworksの裏技Akira Maruyama
 
kpfx07 LT ruby-processingでイケメンになりたい
kpfx07 LT ruby-processingでイケメンになりたいkpfx07 LT ruby-processingでイケメンになりたい
kpfx07 LT ruby-processingでイケメンになりたいkoki_h
 
Way that Symfony2 to be installed on windows7 and xampp
Way that Symfony2 to be installed on windows7 and xamppWay that Symfony2 to be installed on windows7 and xampp
Way that Symfony2 to be installed on windows7 and xamppHotaruMaru HM
 
よこはまクラウド勉強会 01
よこはまクラウド勉強会 01よこはまクラウド勉強会 01
よこはまクラウド勉強会 01basyura
 
2017年3月13日勉強会発表資料
2017年3月13日勉強会発表資料2017年3月13日勉強会発表資料
2017年3月13日勉強会発表資料shogo yamada
 
Middlemanによる静的サイト作成術
Middlemanによる静的サイト作成術Middlemanによる静的サイト作成術
Middlemanによる静的サイト作成術豊明 尾古
 
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発emasaka
 
私とRubyの付き合い方 - 岡山Ruby会議02
私とRubyの付き合い方 - 岡山Ruby会議02私とRubyの付き合い方 - 岡山Ruby会議02
私とRubyの付き合い方 - 岡山Ruby会議02Masaya Konishi
 
円環の理(Garbage Collection)
円環の理(Garbage Collection)円環の理(Garbage Collection)
円環の理(Garbage Collection)Narihiro Nakamura
 
20200504 raspberrypi handson_honpen
20200504 raspberrypi handson_honpen20200504 raspberrypi handson_honpen
20200504 raspberrypi handson_honpenAyachika Kitazaki
 

Was ist angesagt? (20)

Iron rubyとsinatraで作るデスクトップアプリ
Iron rubyとsinatraで作るデスクトップアプリIron rubyとsinatraで作るデスクトップアプリ
Iron rubyとsinatraで作るデスクトップアプリ
 
Rubyコミッタのいる開発いい話
Rubyコミッタのいる開発いい話Rubyコミッタのいる開発いい話
Rubyコミッタのいる開発いい話
 
Xamarin.iOS
Xamarin.iOSXamarin.iOS
Xamarin.iOS
 
Js祭り
Js祭りJs祭り
Js祭り
 
20091119_sinatraを使ってみた
20091119_sinatraを使ってみた20091119_sinatraを使ってみた
20091119_sinatraを使ってみた
 
コマンドライン使いもLibreOffice
コマンドライン使いもLibreOfficeコマンドライン使いもLibreOffice
コマンドライン使いもLibreOffice
 
mrubyボードを使って こんなことしてみました Kansai.mrb 2014 dec
mrubyボードを使って こんなことしてみました Kansai.mrb 2014 decmrubyボードを使って こんなことしてみました Kansai.mrb 2014 dec
mrubyボードを使って こんなことしてみました Kansai.mrb 2014 dec
 
Rubyで.netを扱う
Rubyで.netを扱うRubyで.netを扱う
Rubyで.netを扱う
 
Cコンパイラの改造(未)
Cコンパイラの改造(未)Cコンパイラの改造(未)
Cコンパイラの改造(未)
 
実はこんなこともできる Fireworksの裏技
実はこんなこともできる Fireworksの裏技実はこんなこともできる Fireworksの裏技
実はこんなこともできる Fireworksの裏技
 
kpfx07 LT ruby-processingでイケメンになりたい
kpfx07 LT ruby-processingでイケメンになりたいkpfx07 LT ruby-processingでイケメンになりたい
kpfx07 LT ruby-processingでイケメンになりたい
 
Way that Symfony2 to be installed on windows7 and xampp
Way that Symfony2 to be installed on windows7 and xamppWay that Symfony2 to be installed on windows7 and xampp
Way that Symfony2 to be installed on windows7 and xampp
 
Railsの今昔
Railsの今昔Railsの今昔
Railsの今昔
 
よこはまクラウド勉強会 01
よこはまクラウド勉強会 01よこはまクラウド勉強会 01
よこはまクラウド勉強会 01
 
2017年3月13日勉強会発表資料
2017年3月13日勉強会発表資料2017年3月13日勉強会発表資料
2017年3月13日勉強会発表資料
 
Middlemanによる静的サイト作成術
Middlemanによる静的サイト作成術Middlemanによる静的サイト作成術
Middlemanによる静的サイト作成術
 
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
ゲットーの斜め上をゆくWebアプリケーションフレームワークの開発
 
私とRubyの付き合い方 - 岡山Ruby会議02
私とRubyの付き合い方 - 岡山Ruby会議02私とRubyの付き合い方 - 岡山Ruby会議02
私とRubyの付き合い方 - 岡山Ruby会議02
 
円環の理(Garbage Collection)
円環の理(Garbage Collection)円環の理(Garbage Collection)
円環の理(Garbage Collection)
 
20200504 raspberrypi handson_honpen
20200504 raspberrypi handson_honpen20200504 raspberrypi handson_honpen
20200504 raspberrypi handson_honpen
 

Ähnlich wie Ruby と C# をつなぐ

C#とRubyをつなぐ
C#とRubyをつなぐC#とRubyをつなぐ
C#とRubyをつなぐ107steps
 
Rubinius Under a Microscope
Rubinius Under a MicroscopeRubinius Under a Microscope
Rubinius Under a Microscope高広 内山
 
Ruby on Rails を用いたWEBアプリケーションの開発
Ruby on Rails を用いたWEBアプリケーションの開発Ruby on Rails を用いたWEBアプリケーションの開発
Ruby on Rails を用いたWEBアプリケーションの開発Koichi Shimozono
 
軽量Ruby『mruby』について
軽量Ruby『mruby』について軽量Ruby『mruby』について
軽量Ruby『mruby』についてRyosuke MATSUMOTO
 
emruby: ブラウザで動くRuby
emruby: ブラウザで動くRubyemruby: ブラウザで動くRuby
emruby: ブラウザで動くRubymametter
 
『健全なフロントエンド開発をしよう 〜Railsに乗っかるという選択編〜』 アップ用
『健全なフロントエンド開発をしよう 〜Railsに乗っかるという選択編〜』 アップ用『健全なフロントエンド開発をしよう 〜Railsに乗っかるという選択編〜』 アップ用
『健全なフロントエンド開発をしよう 〜Railsに乗っかるという選択編〜』 アップ用kotaro_hirayama
 
PHPer のための Ruby 教室
PHPer のための Ruby 教室PHPer のための Ruby 教室
PHPer のための Ruby 教室higaki
 
最速で最速のRuby擴張を作る
最速で最速のRuby擴張を作る最速で最速のRuby擴張を作る
最速で最速のRuby擴張を作るSachirou Inoue
 
Ruby リファレンスマニュアル改善計画 2022 進捗報告
Ruby リファレンスマニュアル改善計画 2022 進捗報告Ruby リファレンスマニュアル改善計画 2022 進捗報告
Ruby リファレンスマニュアル改善計画 2022 進捗報告Kazuhiro Nishiyama
 
福岡Ruby会議01 20121201 LT
福岡Ruby会議01 20121201 LT福岡Ruby会議01 20121201 LT
福岡Ruby会議01 20121201 LT学 松崎
 
Ruby on RedHat Enterprise Linux
Ruby on RedHat Enterprise LinuxRuby on RedHat Enterprise Linux
Ruby on RedHat Enterprise LinuxTomoya Kawanishi
 
Building Static Website With Github And Jekyll
Building Static Website With Github And JekyllBuilding Static Website With Github And Jekyll
Building Static Website With Github And JekyllYoji Shidara
 
Ruby Enterprise Environment
Ruby Enterprise EnvironmentRuby Enterprise Environment
Ruby Enterprise EnvironmentTomoya Kawanishi
 
JavascriptでRubyの作り方
JavascriptでRubyの作り方JavascriptでRubyの作り方
JavascriptでRubyの作り方Shuyo Nakatani
 
capybara で快適なテスト生活を
capybara で快適なテスト生活をcapybara で快適なテスト生活を
capybara で快適なテスト生活をRyunosuke SATO
 
Railsの開発環境作るぞ
Railsの開発環境作るぞRailsの開発環境作るぞ
Railsの開発環境作るぞYoichi Toyota
 
Mrubyについて 第16回 岡山ruby, ruby on rails勉強会
Mrubyについて   第16回 岡山ruby, ruby on rails勉強会Mrubyについて   第16回 岡山ruby, ruby on rails勉強会
Mrubyについて 第16回 岡山ruby, ruby on rails勉強会Masaya Konishi
 
Rubyボードハンズオン
RubyボードハンズオンRubyボードハンズオン
Rubyボードハンズオン三七男 山本
 
Ruby での外部コマンドの実行について
Ruby での外部コマンドの実行についてRuby での外部コマンドの実行について
Ruby での外部コマンドの実行についてTomoya Kawanishi
 

Ähnlich wie Ruby と C# をつなぐ (20)

C#とRubyをつなぐ
C#とRubyをつなぐC#とRubyをつなぐ
C#とRubyをつなぐ
 
Rubinius Under a Microscope
Rubinius Under a MicroscopeRubinius Under a Microscope
Rubinius Under a Microscope
 
Ruby on Rails を用いたWEBアプリケーションの開発
Ruby on Rails を用いたWEBアプリケーションの開発Ruby on Rails を用いたWEBアプリケーションの開発
Ruby on Rails を用いたWEBアプリケーションの開発
 
軽量Ruby『mruby』について
軽量Ruby『mruby』について軽量Ruby『mruby』について
軽量Ruby『mruby』について
 
emruby: ブラウザで動くRuby
emruby: ブラウザで動くRubyemruby: ブラウザで動くRuby
emruby: ブラウザで動くRuby
 
『健全なフロントエンド開発をしよう 〜Railsに乗っかるという選択編〜』 アップ用
『健全なフロントエンド開発をしよう 〜Railsに乗っかるという選択編〜』 アップ用『健全なフロントエンド開発をしよう 〜Railsに乗っかるという選択編〜』 アップ用
『健全なフロントエンド開発をしよう 〜Railsに乗っかるという選択編〜』 アップ用
 
PHPer のための Ruby 教室
PHPer のための Ruby 教室PHPer のための Ruby 教室
PHPer のための Ruby 教室
 
Ruby24
Ruby24Ruby24
Ruby24
 
最速で最速のRuby擴張を作る
最速で最速のRuby擴張を作る最速で最速のRuby擴張を作る
最速で最速のRuby擴張を作る
 
Ruby リファレンスマニュアル改善計画 2022 進捗報告
Ruby リファレンスマニュアル改善計画 2022 進捗報告Ruby リファレンスマニュアル改善計画 2022 進捗報告
Ruby リファレンスマニュアル改善計画 2022 進捗報告
 
福岡Ruby会議01 20121201 LT
福岡Ruby会議01 20121201 LT福岡Ruby会議01 20121201 LT
福岡Ruby会議01 20121201 LT
 
Ruby on RedHat Enterprise Linux
Ruby on RedHat Enterprise LinuxRuby on RedHat Enterprise Linux
Ruby on RedHat Enterprise Linux
 
Building Static Website With Github And Jekyll
Building Static Website With Github And JekyllBuilding Static Website With Github And Jekyll
Building Static Website With Github And Jekyll
 
Ruby Enterprise Environment
Ruby Enterprise EnvironmentRuby Enterprise Environment
Ruby Enterprise Environment
 
JavascriptでRubyの作り方
JavascriptでRubyの作り方JavascriptでRubyの作り方
JavascriptでRubyの作り方
 
capybara で快適なテスト生活を
capybara で快適なテスト生活をcapybara で快適なテスト生活を
capybara で快適なテスト生活を
 
Railsの開発環境作るぞ
Railsの開発環境作るぞRailsの開発環境作るぞ
Railsの開発環境作るぞ
 
Mrubyについて 第16回 岡山ruby, ruby on rails勉強会
Mrubyについて   第16回 岡山ruby, ruby on rails勉強会Mrubyについて   第16回 岡山ruby, ruby on rails勉強会
Mrubyについて 第16回 岡山ruby, ruby on rails勉強会
 
Rubyボードハンズオン
RubyボードハンズオンRubyボードハンズオン
Rubyボードハンズオン
 
Ruby での外部コマンドの実行について
Ruby での外部コマンドの実行についてRuby での外部コマンドの実行について
Ruby での外部コマンドの実行について
 

Ruby と C# をつなぐ