IronRuby
Upcoming SlideShare
Loading in...5
×
 

IronRuby

on

  • 3,742 views

IronRuby presentation for VistaSquad on 15th July 2009.

IronRuby presentation for VistaSquad on 15th July 2009.

Video of presentation can be found on my blog @ blog.benhall.me.uk

Statistics

Views

Total Views
3,742
Views on SlideShare
3,473
Embed Views
269

Actions

Likes
0
Downloads
8
Comments
1

5 Embeds 269

http://blog.benhall.me.uk 162
http://blog2.benhall.me.uk 80
http://verboselogging.com 12
http://localhost 11
http://www.slideshare.net 4

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel

11 of 1

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Microsoft have invested in the platform.
  • http://www.flickr.com/photos/lastrounds/3199561205/sizes/o/
  • http://www.flickr.com/photos/mag3737/1914076277/It’s open source
  • http://www.flickr.com/photos/25501212@N05/2934269081/
  • The Ruby language
  • Works with WPF,Silverlight, ASP.net MVC, Powershell and your own .Net assemblies and frameworks.
  • Ruby has a great community and some amazing open source frameworks
  • You can embedIronRuby into your own applications

IronRuby IronRuby Presentation Transcript

  • IronRuby
    Twitter - @Ben_Hall
    Blog.BenHall.me.uk
    Ben@BenHall.me.uk
  • Tell you why you should care
  • Ruby 101
    Creating WPF applications - DiskUsage
    Silverlight – browser repl
    Powershell - irpowershell
    Interacting with any .Net framework – Nhibernate
    Sinarta – very lightweight way to show data
    IronRuby
    Testing C#
    Embedding the DLR
  • WPF
    Powershell
    C#
    Ruby
  • Reason #1
  • Dynamic Language
    Runtime
    http://www.flickr.com/photos/lastrounds/3199561205/sizes/o/
  • IronPython
  • IronPython
    ?
  • Gary Short
    IronSmallTalk
  • Reason #2
  • http://www.flickr.com/photos/mag3737/1914076277/
  • MS-PL
    http://www.flickr.com/photos/25501212@N05/2934269081/
  • Reason #3
  • RUBY, RUBY, RUBY, Ruby...
  • Optional Syntax
    puts ‘Hello World’
    puts(‘Hello World’)
    puts(‘Hello World’);
  • Simple declarations
    x = 1
  • Natural Programming
    x = [1,2,3]
    y = [4,5,6]
    x + y == [1,2,3,4,5,6]
  • Everything is an object
    “Hello World”.upcase
    [5,3,4,1,6].sort
    10.times { }
  • Blocks
    10.times do |i|
    puts i
    end
    10.times { |i| puts i }
  • Duck Typing
    def print_name(obj)
    puts obj.get_name
    end
    http://www.flickr.com/photos/normis/337183421/
  • Duck Typing
    class A
    def get_name
    “My name is A”
    end
    end
  • Duck Typing
    class Q
    def get_name
    “My name is Q”
    end
    end
  • Duck Typing
    print_nameA.new
    print_name(Q.new)
  • Libraries
    require ‘rake’
  • RubyGems
    gem install rake
    Successfully installed rake-0.8.4
    1 gem installed
    Installing ri documentation for rake-0.8.4...
    Installing RDoc documentation for rake-0.8.4...
  • Reason #4
  • .NetInterop
    http://www.flickr.com/photos/mendhak/2117622450/sizes/o/
  • Reason #5
  • Reason #6
  • String code = “puts ‘Hello World’”
    Engine = IronRuby.Ruby.CreateEngine();
    Scope = Engine.CreateScope();
    ScriptSourcesource = Engine.CreateScriptSourceFromString(code, SourceCodeKind.Statements);
    object result = source.Execute(Scope);
  • Data Gen Screenshot
  • Reflector Screenshot
  • Resolver Systems
  • How will IronRuby
    change
    your world?
  • Thank you!
    Twitter - @Ben_Hall
    Blog.BenHall.me.uk
    Ben@BenHall.me.uk
  • Links
    http://www.codeplex.com/dlr
    http://www.codeplex.com/Ironruby
    http://www.codeplex.com/ironpython
    http://blog.benhall.me.uk/2009/04/embedding-ironruby-and-dlr-into-red.html
    http://msdn.microsoft.com/en-us/magazine/dd434651.aspx
    http://msdn.microsoft.com/en-us/magazine/dd453038.aspx
    http://www.resolversystems.com
    http://www.manning.com/foord/