Upload
nikos-dimitrakopoulos
View
1.038
Download
1
Tags:
Embed Size (px)
Citation preview
The .Net Ruby VM
Dec 2009Nikos Dimitrakopoulos
Me
Software developer Ruby lover Rails developer (for fun & profit) Working at pamediakopes.gr
and thus also .Net developer
The presentation
What is IronRuby What does it offer to Ruby
developers Limitations Future
Famous quotes
It doesn’t scale It’s slow It’s immature Not enterprise …
But
jRuby MacRuby Rubinius MagLev IronRuby
.Net
What is IronRuby
The Ruby VM implemented in .Net (C#)
Part of the family of the scripting (and not only) languages implemented in .Net Python Ruby (more coming)?
.Net Integration
Interoperability with .Net Consume all the C# code you want!
The huge .Net library ecosystem External .Net libraries Custom / existing C# code
# Demo
.Net Integration
Extend existing .Net classes the ruby way!
.Net Integration
Call ruby code from .Net!
# Demo
.Net Integration
Deploy on .Net infrastructure Web apps on IIS (Rails on .Net!) Consume (natively) .Net services
SQL Office Active Directory Exchange etc...
.Net Integration
Deploy on .Net infrastructure Desktop applications on Windows Desktop applications on everywhere
(Mono)
.Net Integration
Test .Net code with Cucumber & RSpec!
Additionally
“Translations” of idioms: object.SomeMethod() <->
object.some_method System.Core <-> System::Core
C# lambdas and delegates <-> Ruby clojures
>>> l = System::Byte.instance_methods(false).last=> 'get_type_code'
>>> l.ruby_name=> "get_type_code"
>>> l.clr_name=> "GetTypeCode"
Additionally
Interoperability with the other scripting languages! Python JavaScript …
Use code also from there!
Silverlight
Silverlight integration Write ruby instead of javascript in
your pages! (Gestalt project)
Silverlight
# Gestalt Demo
Limitations
No support for native C gems Some rough edges in interoperability
Status
Links
IronRuby: http://ironruby.net/ http://ironruby.codeplex.com/
Rubyst.es http://rubyst.es http://groups.google.com/ruby-hellug
Pamediakopes http://www.pamediakopes.gr http://www.airtickets24.com
Me http://blog.nikosd.com http://twitter.com/nikosd nospam - at - nikosd - dom – com
Code samples : http://nikosd.com/f/ironruby-code-samples.zip