Embracing a new world - dynamic languages and .NET Twitter - @Ben_Hall Blog.BenHall.me.uk [email_address]
Dynamic Language Runtime
What is the DLR? http://www.flickr.com/photos/lastrounds/3199561205/sizes/o/
 
IronSmallTalk Gary Short
dynamic   What is a Language?
R UBY,  R UBY,  R UBY
Optional Syntax <ul><li>puts ‘Hello World’ </li></ul><ul><li>puts(‘Hello World’) </li></ul><ul><li>puts(‘Hello World’); </...
Simple declarations <ul><li>x = 1 </li></ul>
Natural Programming <ul><li>x = [1,2,3] </li></ul><ul><li>y = [4,5,6] </li></ul><ul><li>x + y == [1,2,3,4,5,6] </li></ul>
Everything is an object <ul><li>“ Hello World”.upcase </li></ul><ul><li>[5,3,4,1,6].sort </li></ul><ul><li>10.times { } </...
Blocks <ul><li>10.times do |i| </li></ul><ul><li>puts i </li></ul><ul><li>end </li></ul><ul><li>10.times { |i| puts i } </...
Duck Typing <ul><li>def print_name(obj) </li></ul><ul><li>puts obj.get_name </li></ul><ul><li>end </li></ul>http://www.fli...
Duck Typing <ul><li>class A </li></ul><ul><li>def get_name </li></ul><ul><li>“ My name is A” </li></ul><ul><li>end </li></...
Duck Typing <ul><li>class Q </li></ul><ul><li>def get_name </li></ul><ul><li>“ My name is Q” </li></ul><ul><li>end </li></...
Duck Typing <ul><li>print_name A.new </li></ul><ul><li>print_name(Q.new) </li></ul>
Libraries <ul><li>require ‘rake’ </li></ul>
RubyGems <ul><li>gem install rake </li></ul><ul><li>Successfully installed rake-0.8.4 </li></ul><ul><li>1 gem installed </...
If that’s Ruby http://www.flickr.com/photos/bflv/3328427869/ What’s IronRuby?
http://www.flickr.com/photos/djwhelan/8395783/
http://www.flickr.com/photos/mendhak/2117622450/sizes/o/ Combing the two worlds
Data Gen Screenshot
Reflector Screenshot
Resolver Systems
change   How will the DLR  your world?
Thank you! Twitter - @Ben_Hall Blog.BenHall.me.uk [email_address]
Links <ul><li>http://www.codeplex.com/dlr </li></ul><ul><li>http://www.codeplex.com/Ironruby </li></ul><ul><li>http://www....
Upcoming SlideShare
Loading in …5
×

Embracing a new world - dynamic languages and .NET

1,318
-1

Published on

Presentation on dynamic languages and .Net for DeveloperDay Scotland on 2nd May 2009.

Published in: Technology, Sports
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,318
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
22
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Embracing a new world - dynamic languages and .NET

    1. 1. Embracing a new world - dynamic languages and .NET Twitter - @Ben_Hall Blog.BenHall.me.uk [email_address]
    2. 2. Dynamic Language Runtime
    3. 3. What is the DLR? http://www.flickr.com/photos/lastrounds/3199561205/sizes/o/
    4. 5. IronSmallTalk Gary Short
    5. 6. dynamic What is a Language?
    6. 7. R UBY, R UBY, R UBY
    7. 8. Optional Syntax <ul><li>puts ‘Hello World’ </li></ul><ul><li>puts(‘Hello World’) </li></ul><ul><li>puts(‘Hello World’); </li></ul>
    8. 9. Simple declarations <ul><li>x = 1 </li></ul>
    9. 10. Natural Programming <ul><li>x = [1,2,3] </li></ul><ul><li>y = [4,5,6] </li></ul><ul><li>x + y == [1,2,3,4,5,6] </li></ul>
    10. 11. Everything is an object <ul><li>“ Hello World”.upcase </li></ul><ul><li>[5,3,4,1,6].sort </li></ul><ul><li>10.times { } </li></ul>
    11. 12. Blocks <ul><li>10.times do |i| </li></ul><ul><li>puts i </li></ul><ul><li>end </li></ul><ul><li>10.times { |i| puts i } </li></ul>
    12. 13. Duck Typing <ul><li>def print_name(obj) </li></ul><ul><li>puts obj.get_name </li></ul><ul><li>end </li></ul>http://www.flickr.com/photos/normis/337183421/
    13. 14. Duck Typing <ul><li>class A </li></ul><ul><li>def get_name </li></ul><ul><li>“ My name is A” </li></ul><ul><li>end </li></ul><ul><li>end </li></ul>
    14. 15. Duck Typing <ul><li>class Q </li></ul><ul><li>def get_name </li></ul><ul><li>“ My name is Q” </li></ul><ul><li>end </li></ul><ul><li>end </li></ul>
    15. 16. Duck Typing <ul><li>print_name A.new </li></ul><ul><li>print_name(Q.new) </li></ul>
    16. 17. Libraries <ul><li>require ‘rake’ </li></ul>
    17. 18. RubyGems <ul><li>gem install rake </li></ul><ul><li>Successfully installed rake-0.8.4 </li></ul><ul><li>1 gem installed </li></ul><ul><li>Installing ri documentation for rake-0.8.4... </li></ul><ul><li>Installing RDoc documentation for rake-0.8.4... </li></ul>
    18. 19. If that’s Ruby http://www.flickr.com/photos/bflv/3328427869/ What’s IronRuby?
    19. 20. http://www.flickr.com/photos/djwhelan/8395783/
    20. 21. http://www.flickr.com/photos/mendhak/2117622450/sizes/o/ Combing the two worlds
    21. 22. Data Gen Screenshot
    22. 23. Reflector Screenshot
    23. 24. Resolver Systems
    24. 25. change How will the DLR your world?
    25. 26. Thank you! Twitter - @Ben_Hall Blog.BenHall.me.uk [email_address]
    26. 27. Links <ul><li>http://www.codeplex.com/dlr </li></ul><ul><li>http://www.codeplex.com/Ironruby </li></ul><ul><li>http://www.codeplex.com/ironpython </li></ul><ul><li>http://blog.benhall.me.uk/2009/04/embedding-ironruby-and-dlr-into-red.html </li></ul><ul><li>http://msdn.microsoft.com/en-us/magazine/dd434651.aspx </li></ul><ul><li>http://msdn.microsoft.com/en-us/magazine/dd453038.aspx </li></ul><ul><li>http://www.resolversystems.com </li></ul><ul><li>http://www.manning.com/foord/ </li></ul>
    1. A particular slide catching your eye?

      Clipping is a handy way to collect important slides you want to go back to later.

    ×