The Future of Ruby1. www.af83.com
af83 France Ruby 1.9
The Future of Ruby?
15 rue poissonnière, 75002 Paris
+33 1 42 72 33 32
contact@af83.com
af83 USA
1436 A Howard St. Bruno Michel
CA 94103 San Francisco
United States
RMLL, Bordeaux, 07/08/2010
2. Introduction
Bruno Michel
Lead Developer R&D at af83
As Lead Developer R&D at af83, a significant part of Bruno's work
is to test, create and contribute to cutting edge Web technologies,
which allows him to anticipate the most promising open source
projects. He is also the maintainer of numerous Web-centric
projects based on Ruby.
Active Member of the French Ruby Association, Bruno is also one
of the webmasters of LinuxFr.org.
http://github.com/nono
http://twitter.com/brmichel
http://blog.menfin.info/
Copyright © 2010 af83 All Rights Reserved 2
3. Agenda
Origin Present Future
Copyright © 2010 af83 All Rights Reserved 3
4. The Origin
Origin Present Future
Copyright © 2010 af83 All Rights Reserved 4
5. The Origin
Origin Present Future Yukihiro Matsumoto (aka Matz)
First version in 1995
Inspired by LISP, Perl, Smalltalk, Eiffel...
Object-oriented
Dynamic typing
Copyright © 2010 af83 All Rights Reserved 5
6. Specificities
Origin Present Future Emphasizes human, rather than computer, needs
Principle Of Least Astonishment (POLA)
Programmer productivity & fun
Copyright © 2010 af83 All Rights Reserved 6
8. Object
Origin Present Future
Copyright © 2010 af83 All Rights Reserved 8
9. Functional
Origin Present Future
Copyright © 2010 af83 All Rights Reserved 9
10. Present
Origin Present Future
Copyright © 2010 af83 All Rights Reserved 10
11. New Version
Origin Present Future
Ruby 1.8
Currently 1.8.7
Stable, works fine
But slow
Copyright © 2010 af83 All Rights Reserved 11
12. YARV
Origin Present Future
Yet Another Ruby VM
A new implementation of Ruby
by Koichi Sasada (aka ko1n)
2005 and 2006 : unofficial project
1st January 2007 : the new official Ruby 1.9
Copyright © 2010 af83 All Rights Reserved 12
13. Versions
Origin Present Future 25th December 2007 : 1.9.0
A milestone
Not ready for main usage
30th January 2009 : 1.9.1
Claimed as stable
But a lot of bugs (segfaults)
Many libs not ported to Ruby 1.9
Last week : 1.9.2-rc
In one month : 1.9.2
Should be the good one
Copyright © 2010 af83 All Rights Reserved 13
14. What's New
Origin Present Future Performance
Ruby 1.9 is 3x to 5x faster than Ruby 1.8
It depends of the benchmarks
Copyright © 2010 af83 All Rights Reserved 14
15. What's New
Origin Present Future Encoding
Copyright © 2010 af83 All Rights Reserved 15
16. What's New
Origin Present Future Fibers
Copyright © 2010 af83 All Rights Reserved 16
17. What's New
Origin Present Future Hash Improved
Hash are now ordered
New syntax for hash
Copyright © 2010 af83 All Rights Reserved 17
18. What's New
Origin Present Future Integration of some popular libs:
● Rubygems
● JSON
Many new methods on the basic classes
Copyright © 2010 af83 All Rights Reserved 18
19. Present
Origin Present Future
Copyright © 2010 af83 All Rights Reserved 19
20. Other Rubies
Origin Present Future ● Rubinius
● Ruby
● IronRuby
● MacRuby
● etc.
Copyright © 2010 af83 All Rights Reserved 20
21. RVM
Origin Present Future
Ruby Version Manager
● A shell script, minimal dependencies
● Multiple rubies in the same environment
● Takes care of the gems
● rvm install 1.9.2
● rvm use 1.9.2
Copyright © 2010 af83 All Rights Reserved 21
22. And after?
Origin Present Future
Ruby 2.0
● Performance
● Multiple VM
● Nice features
● Selector namespaces
● Traits
● More functional
● Lazy evaluation
Copyright © 2010 af83 All Rights Reserved 22
23. Even after?
Origin Present Future ● And after?
● Ruby 2.0
● But it's a myth!
Copyright © 2010 af83 All Rights Reserved 23
24. Present
Future: Ruby 1.9 (or maybe an alternative implementation)
Origin Present Future
Ruby 1.8.7 RVM Ruby 1.9
(or maybe an
alternative
implementation)
Copyright © 2010 af83 All Rights Reserved 24
26. www.af83.com
af83 France
15 rue poissonnière, 75002 Paris
+33 1 42 72 33 32
contact@af83.com
af83 USA
1436 A Howard St.
CA 94103 San Francisco
United States