Your SlideShare is downloading. ×
  • Like
RubyならMacでしょう
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

RubyならMacでしょう

  • 1,438 views
Published

RubyならMacでしょう …

RubyならMacでしょう
Ruby, on your Mac of course

Published in Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
1,438
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
8
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Ruby Mac Ruby, on your Mac of course Vincent Isambart
  • 2. Ruby Mac Ruby, on your Mac of course / Self-introduction MacRuby / MacRuby’s story MacRuby / In development Q&A
  • 3. Self-introduction Vincent Isambart (IRC: scritch) @vincentisambart 2003: Ruby / Discovered Ruby 2006: RHG / RHG translation 2008-2009: MacRuby
  • 4. Mac Ruby Ruby on Mac % ruby -v ruby 1.8.6 (2008-08-11 patchlevel 287)
  • 5. RubyCocoa
  • 6. RubyCocoa RubyCocoa’s problems Threading Method names Speed Type conversion
  • 7. 2008: MacRuby MacRuby starts (Mac) Ruby Goal: Best Ruby implementation for the (Mac) desktop
  • 8. Ruby 1.9 Why based on Ruby 1.9? 1.9 1.9 was unstable 1.9 Some features Few people knew 1.9 were not finished
  • 9. Ruby 1.9 Why based on Ruby 1.9? Starting from scratch is too much work 1.9 Ruby 1.9 1.8 1.9 is Ruby’s future 1.9 is better than 1.8 Open-source
  • 10. 1.9 MacRuby 0.4 Diff between 1.9 and MR 0.4 Ruby GC Obj-C GC Ruby object Obj-C object Ruby core class Obj-C core class
  • 11. ( ) What did not change (much) / Parser YARV Ruby Ruby standard library
  • 12. Cocoa more Ruby-like HotCocoa
  • 13. MacRuby 0.4 MacRuby 0.4’s problems Incompatibilities Threading with 1.9 Merging 1.9 Speed
  • 14. 12 : 0.5 Dec 2009: 0.5 dev started 0.4 Goal: Solving all 0.4’s problems
  • 15. How? VM By creating a new VM rm vm*.c # bye bye YARV
  • 16. Speed and threads Calculations are super-fast You can use multiple cores
  • 17. Testing test-vm.rb RubySpec
  • 18. AOT compiling Fast start time Hide the code
  • 19. C Stop creating C libraries ruby-ffi
  • 20. MacRuby 0.5 MacRuby 0.5’s weak points Memory allocation is slow Not very portable 32 Does not work in 32 bits Hard to compile C JIT C extensions don’t work JIT takes time Rake does not work properly
  • 21. MacRuby 0.5 MacRuby 0.5’s weak points In development
  • 22. MacRuby 0.5 MacRuby 0.5’s weak points Memory allocation is slow Not very portable 32 Does not work in 32 bits Hard to compile C JIT C extensions don’t work JIT takes time Rake does not work properly
  • 23. Cocoa Creating a Cocoa application : RubyCocoa : MacRuby 0.4 : MacRuby 0.5
  • 24. If you want to help 1.9 / Learn 1.9 RubySpec / Help RubySpec Ruby / Make pure Ruby libs / Make tutorials
  • 25. Q&A http://www.macruby.org twitter: @macruby IRC: #ruby-osx (freenode)
  • 26. FAQ iPhone... CPU The CPU is different Investigating JIT Can’t use the JIT ObjC GC Can’t use the ObjC GC