SlideShare une entreprise Scribd logo
1  sur  26
Télécharger pour lire hors ligne
2009   10   5
2009   10   5
2009   10   5
2009   10   5
Multilingualization
                (M17N)




2009   10   5
2009   10   5
2009   10   5
2009   10   5
2009   10   5
2009   10   5
$ cd ~/src

                $ darcs get http://eigenclass.org/repos/ruby-changelog
                $ cd ruby-changelog
                $ ruby ruby18-19.rb ruby18 ruby19




2009   10   5
2009   10   5
def fib(n)
                 n <= 1 ? 1 : fib(n-1) + fib(n-2)
                end

                n = (ENV['N'] || $N || 35).to_i
                p fib(n)




2009   10   5
[SnowLeopard]% time ruby -s fib-bench.rb -N=35
                ruby -s fib-bench.rb -N=35 15.78s user 0.04s system 99% cpu 15.958 total

                [SnowLeopard]e% time ruby19 -s fib-bench.rb -N=35
                ruby19 -s fib-bench.rb -N=35 2.62s user 0.01s system 98% cpu 2.665 total

                [SnowLeopard]% time jruby -s fib-bench.rb -N=35
                jruby -s fib-bench.rb -N=35 3.06s user 0.38s system 58% cpu 5.854 total




2009   10   5
2009   10   5
% ruby bench.rb -n 1000
            *** ntimes=1000, testmode=execute
                                         user    system       total      real
            ERB                       1.460000   0.030000   1.490000 (   1.499990)
            ERB(cached)               0.660000   0.030000   0.690000 (   0.698136)
            Erubis::Eruby             0.930000   0.020000   0.950000 (   0.955335)
            Erubis::Eruby(cached)     0.630000   0.030000   0.660000 (   0.666248)
            Erubis::FastEruby         0.870000   0.030000   0.900000 (   0.901067)
            Erubis::FastEruby(cached) 0.540000   0.030000   0.570000 (   0.582040)

             ruby19 bench.rb -n 1000
            *** ntimes=1000, testmode=execute
                                  user      system    total    real
            ERB                        1.400000 0.050000 1.450000 (      1.471488)
            ERB(cached)                0.800000 0.040000 0.840000 (      0.852346)
            Erubis::Eruby              1.040000 0.030000 1.070000 (      1.080901)
            Erubis::Eruby(cached)      0.750000 0.040000 0.790000 (      0.785487)
            Erubis::FastEruby          1.020000 0.030000 1.050000 (      1.064794)
            Erubis::FastEruby(cached) 0.700000 0.040000 0.740000 (       0.742450)

2009   10   5
2009   10   5
2009   10   5
2009   10   5
2009   10   5
2009   10   5
2009   10   5
2009   10   5
2009   10   5
2009   10   5
2009   10   5

Contenu connexe

Tendances

Understanding SLAB in Linux Kernel
Understanding SLAB in Linux KernelUnderstanding SLAB in Linux Kernel
Understanding SLAB in Linux KernelHaifeng Li
 
Nasamatic NewHaven.IO 2014 05-21
Nasamatic NewHaven.IO 2014 05-21Nasamatic NewHaven.IO 2014 05-21
Nasamatic NewHaven.IO 2014 05-21Prasanna Gautam
 
33406960 manual-desain-jembatan-baja-oleh-gilang-aditya
33406960 manual-desain-jembatan-baja-oleh-gilang-aditya33406960 manual-desain-jembatan-baja-oleh-gilang-aditya
33406960 manual-desain-jembatan-baja-oleh-gilang-adityajoko222
 
Designof traffic isolationby using flow based tunneling
Designof traffic isolationby using flow based tunnelingDesignof traffic isolationby using flow based tunneling
Designof traffic isolationby using flow based tunnelingsoichi shigeta
 
Start Making Big Data With SQL and RDBMS Skills - Webinar by Bigstep and Exasol
Start Making Big Data With SQL and RDBMS Skills - Webinar by Bigstep and ExasolStart Making Big Data With SQL and RDBMS Skills - Webinar by Bigstep and Exasol
Start Making Big Data With SQL and RDBMS Skills - Webinar by Bigstep and ExasolBigstep
 
Run OSGi on your robot and teach it new tricks - T Verbelen
Run OSGi on your robot and teach it new tricks - T VerbelenRun OSGi on your robot and teach it new tricks - T Verbelen
Run OSGi on your robot and teach it new tricks - T Verbelenmfrancis
 

Tendances (6)

Understanding SLAB in Linux Kernel
Understanding SLAB in Linux KernelUnderstanding SLAB in Linux Kernel
Understanding SLAB in Linux Kernel
 
Nasamatic NewHaven.IO 2014 05-21
Nasamatic NewHaven.IO 2014 05-21Nasamatic NewHaven.IO 2014 05-21
Nasamatic NewHaven.IO 2014 05-21
 
33406960 manual-desain-jembatan-baja-oleh-gilang-aditya
33406960 manual-desain-jembatan-baja-oleh-gilang-aditya33406960 manual-desain-jembatan-baja-oleh-gilang-aditya
33406960 manual-desain-jembatan-baja-oleh-gilang-aditya
 
Designof traffic isolationby using flow based tunneling
Designof traffic isolationby using flow based tunnelingDesignof traffic isolationby using flow based tunneling
Designof traffic isolationby using flow based tunneling
 
Start Making Big Data With SQL and RDBMS Skills - Webinar by Bigstep and Exasol
Start Making Big Data With SQL and RDBMS Skills - Webinar by Bigstep and ExasolStart Making Big Data With SQL and RDBMS Skills - Webinar by Bigstep and Exasol
Start Making Big Data With SQL and RDBMS Skills - Webinar by Bigstep and Exasol
 
Run OSGi on your robot and teach it new tricks - T Verbelen
Run OSGi on your robot and teach it new tricks - T VerbelenRun OSGi on your robot and teach it new tricks - T Verbelen
Run OSGi on your robot and teach it new tricks - T Verbelen
 

En vedette

Arnheim rudolf arte_y_percepcion_visual
Arnheim rudolf arte_y_percepcion_visualArnheim rudolf arte_y_percepcion_visual
Arnheim rudolf arte_y_percepcion_visualAngel Arias Camacho
 
Cobo percepcion visual
Cobo percepcion visualCobo percepcion visual
Cobo percepcion visualjohanna cobo
 
Elementos de la expresión plástica (1º de ESO)
Elementos de la expresión plástica (1º de ESO)Elementos de la expresión plástica (1º de ESO)
Elementos de la expresión plástica (1º de ESO)gbgplastica
 
El lenguaje Visual_3 eso
El lenguaje Visual_3 esoEl lenguaje Visual_3 eso
El lenguaje Visual_3 esoLucía Alvarez
 
ELEMENTOS DEL LENGUAJE VISUAL
ELEMENTOS DEL LENGUAJE VISUALELEMENTOS DEL LENGUAJE VISUAL
ELEMENTOS DEL LENGUAJE VISUALdiazmartos
 
Aplicaciones del Smartphone en el aula
Aplicaciones del Smartphone en el aulaAplicaciones del Smartphone en el aula
Aplicaciones del Smartphone en el aulaLucía Alvarez
 
El color. Caracteristicas generales
El color. Caracteristicas generalesEl color. Caracteristicas generales
El color. Caracteristicas generalesLucía Alvarez
 

En vedette (9)

Arnheim rudolf arte_y_percepcion_visual
Arnheim rudolf arte_y_percepcion_visualArnheim rudolf arte_y_percepcion_visual
Arnheim rudolf arte_y_percepcion_visual
 
Cobo percepcion visual
Cobo percepcion visualCobo percepcion visual
Cobo percepcion visual
 
Elementos de la expresión plástica (1º de ESO)
Elementos de la expresión plástica (1º de ESO)Elementos de la expresión plástica (1º de ESO)
Elementos de la expresión plástica (1º de ESO)
 
El lenguaje Visual_3 eso
El lenguaje Visual_3 esoEl lenguaje Visual_3 eso
El lenguaje Visual_3 eso
 
ELEMENTOS DEL LENGUAJE VISUAL
ELEMENTOS DEL LENGUAJE VISUALELEMENTOS DEL LENGUAJE VISUAL
ELEMENTOS DEL LENGUAJE VISUAL
 
El punto _ 1 eso
El punto _ 1 esoEl punto _ 1 eso
El punto _ 1 eso
 
Aplicaciones del Smartphone en el aula
Aplicaciones del Smartphone en el aulaAplicaciones del Smartphone en el aula
Aplicaciones del Smartphone en el aula
 
El color. Caracteristicas generales
El color. Caracteristicas generalesEl color. Caracteristicas generales
El color. Caracteristicas generales
 
La línea
La líneaLa línea
La línea
 

Similaire à いまさら聞けないRuby1.9

Rubinius 1.0 and more!
Rubinius 1.0 and more!Rubinius 1.0 and more!
Rubinius 1.0 and more!evanphx
 
J Ruby Kungfu Rails
J Ruby   Kungfu RailsJ Ruby   Kungfu Rails
J Ruby Kungfu RailsDaniel Lv
 
Практический опыт профайлинга и оптимизации производительности Ruby-приложений
Практический опыт профайлинга и оптимизации производительности Ruby-приложенийПрактический опыт профайлинга и оптимизации производительности Ruby-приложений
Практический опыт профайлинга и оптимизации производительности Ruby-приложенийOlga Lavrentieva
 
Performance tweaks and tools for Linux (Joe Damato)
Performance tweaks and tools for Linux (Joe Damato)Performance tweaks and tools for Linux (Joe Damato)
Performance tweaks and tools for Linux (Joe Damato)Ontico
 
Tuning Solr for Logs: Presented by Radu Gheorghe, Sematext
Tuning Solr for Logs: Presented by Radu Gheorghe, SematextTuning Solr for Logs: Presented by Radu Gheorghe, Sematext
Tuning Solr for Logs: Presented by Radu Gheorghe, SematextLucidworks
 
Parallel Ruby: Managing the Memory Monster
Parallel Ruby: Managing the Memory MonsterParallel Ruby: Managing the Memory Monster
Parallel Ruby: Managing the Memory MonsterKevin Miller
 
Debugging Ruby Systems
Debugging Ruby SystemsDebugging Ruby Systems
Debugging Ruby SystemsEngine Yard
 
JRuby Jam Session
JRuby Jam Session JRuby Jam Session
JRuby Jam Session Engine Yard
 
Apache Con NA 2013
Apache Con NA 2013Apache Con NA 2013
Apache Con NA 2013muellerc
 
Shrimp: A Rather Practical Example Of Application Development With RESTinio a...
Shrimp: A Rather Practical Example Of Application Development With RESTinio a...Shrimp: A Rather Practical Example Of Application Development With RESTinio a...
Shrimp: A Rather Practical Example Of Application Development With RESTinio a...Yauheni Akhotnikau
 
JRuby 9000 - Optimizing Above the JVM
JRuby 9000 - Optimizing Above the JVMJRuby 9000 - Optimizing Above the JVM
JRuby 9000 - Optimizing Above the JVMCharles Nutter
 
JRuby 9000 - Taipei Ruby User's Group 2015
JRuby 9000 - Taipei Ruby User's Group 2015JRuby 9000 - Taipei Ruby User's Group 2015
JRuby 9000 - Taipei Ruby User's Group 2015Charles Nutter
 
Android RenderScript on LLVM
Android RenderScript on LLVMAndroid RenderScript on LLVM
Android RenderScript on LLVMJohn Lee
 
Fisl - Deployment
Fisl - DeploymentFisl - Deployment
Fisl - DeploymentFabio Akita
 
Some analysis of BlueStore and RocksDB
Some analysis of BlueStore and RocksDBSome analysis of BlueStore and RocksDB
Some analysis of BlueStore and RocksDBXiao Yan Li
 
JRuby @ Boulder Ruby
JRuby @ Boulder RubyJRuby @ Boulder Ruby
JRuby @ Boulder RubyNick Sieger
 
Torquebox OSCON Java 2011
Torquebox OSCON Java 2011Torquebox OSCON Java 2011
Torquebox OSCON Java 2011tobiascrawley
 

Similaire à いまさら聞けないRuby1.9 (20)

Rubinius 1.0 and more!
Rubinius 1.0 and more!Rubinius 1.0 and more!
Rubinius 1.0 and more!
 
Ruby を全面的に採用した東京ガスの地震防災システム
Ruby を全面的に採用した東京ガスの地震防災システムRuby を全面的に採用した東京ガスの地震防災システム
Ruby を全面的に採用した東京ガスの地震防災システム
 
J Ruby Kungfu Rails
J Ruby   Kungfu RailsJ Ruby   Kungfu Rails
J Ruby Kungfu Rails
 
Практический опыт профайлинга и оптимизации производительности Ruby-приложений
Практический опыт профайлинга и оптимизации производительности Ruby-приложенийПрактический опыт профайлинга и оптимизации производительности Ruby-приложений
Практический опыт профайлинга и оптимизации производительности Ruby-приложений
 
Performance tweaks and tools for Linux (Joe Damato)
Performance tweaks and tools for Linux (Joe Damato)Performance tweaks and tools for Linux (Joe Damato)
Performance tweaks and tools for Linux (Joe Damato)
 
Tuning Solr for Logs: Presented by Radu Gheorghe, Sematext
Tuning Solr for Logs: Presented by Radu Gheorghe, SematextTuning Solr for Logs: Presented by Radu Gheorghe, Sematext
Tuning Solr for Logs: Presented by Radu Gheorghe, Sematext
 
Parallel Ruby: Managing the Memory Monster
Parallel Ruby: Managing the Memory MonsterParallel Ruby: Managing the Memory Monster
Parallel Ruby: Managing the Memory Monster
 
Debugging Ruby Systems
Debugging Ruby SystemsDebugging Ruby Systems
Debugging Ruby Systems
 
JRuby Jam Session
JRuby Jam Session JRuby Jam Session
JRuby Jam Session
 
Apache Con NA 2013
Apache Con NA 2013Apache Con NA 2013
Apache Con NA 2013
 
Shrimp: A Rather Practical Example Of Application Development With RESTinio a...
Shrimp: A Rather Practical Example Of Application Development With RESTinio a...Shrimp: A Rather Practical Example Of Application Development With RESTinio a...
Shrimp: A Rather Practical Example Of Application Development With RESTinio a...
 
JRuby 9000 - Optimizing Above the JVM
JRuby 9000 - Optimizing Above the JVMJRuby 9000 - Optimizing Above the JVM
JRuby 9000 - Optimizing Above the JVM
 
There and Back Again
There and Back AgainThere and Back Again
There and Back Again
 
JRuby 9000 - Taipei Ruby User's Group 2015
JRuby 9000 - Taipei Ruby User's Group 2015JRuby 9000 - Taipei Ruby User's Group 2015
JRuby 9000 - Taipei Ruby User's Group 2015
 
Android RenderScript on LLVM
Android RenderScript on LLVMAndroid RenderScript on LLVM
Android RenderScript on LLVM
 
Fisl - Deployment
Fisl - DeploymentFisl - Deployment
Fisl - Deployment
 
Some analysis of BlueStore and RocksDB
Some analysis of BlueStore and RocksDBSome analysis of BlueStore and RocksDB
Some analysis of BlueStore and RocksDB
 
JRuby @ Boulder Ruby
JRuby @ Boulder RubyJRuby @ Boulder Ruby
JRuby @ Boulder Ruby
 
Hy 523
Hy 523Hy 523
Hy 523
 
Torquebox OSCON Java 2011
Torquebox OSCON Java 2011Torquebox OSCON Java 2011
Torquebox OSCON Java 2011
 

Plus de demuyan

ソフトウェア開発の歴史を振り返る
ソフトウェア開発の歴史を振り返るソフトウェア開発の歴史を振り返る
ソフトウェア開発の歴史を振り返るdemuyan
 
低レイヤー入門
低レイヤー入門低レイヤー入門
低レイヤー入門demuyan
 
GDKとLLVM(横浜PF部向け)
GDKとLLVM(横浜PF部向け)GDKとLLVM(横浜PF部向け)
GDKとLLVM(横浜PF部向け)demuyan
 
組込Android本の執筆環境
組込Android本の執筆環境組込Android本の執筆環境
組込Android本の執筆環境demuyan
 
ゲーム屋的パフォーマンスチューニング
ゲーム屋的パフォーマンスチューニングゲーム屋的パフォーマンスチューニング
ゲーム屋的パフォーマンスチューニングdemuyan
 
Linuxカーネルから紐解くAndroid
Linuxカーネルから紐解くAndroidLinuxカーネルから紐解くAndroid
Linuxカーネルから紐解くAndroiddemuyan
 
基礎から学ぶ組み込みAndroid
基礎から学ぶ組み込みAndroid基礎から学ぶ組み込みAndroid
基礎から学ぶ組み込みAndroiddemuyan
 
Android&Web&Titanium
Android&Web&TitaniumAndroid&Web&Titanium
Android&Web&Titaniumdemuyan
 
Gdgd発表スライド
Gdgd発表スライドGdgd発表スライド
Gdgd発表スライドdemuyan
 
Android & BeagleBoardで組込入門
Android & BeagleBoardで組込入門Android & BeagleBoardで組込入門
Android & BeagleBoardで組込入門demuyan
 
AppBank 村井氏 講演資料
AppBank 村井氏 講演資料AppBank 村井氏 講演資料
AppBank 村井氏 講演資料demuyan
 
Androidとは。ちょっと変った視点から
Androidとは。ちょっと変った視点からAndroidとは。ちょっと変った視点から
Androidとは。ちょっと変った視点からdemuyan
 
現在のCOM事情
現在のCOM事情現在のCOM事情
現在のCOM事情demuyan
 
Yet Another Development Language
Yet Another Development LanguageYet Another Development Language
Yet Another Development Languagedemuyan
 

Plus de demuyan (14)

ソフトウェア開発の歴史を振り返る
ソフトウェア開発の歴史を振り返るソフトウェア開発の歴史を振り返る
ソフトウェア開発の歴史を振り返る
 
低レイヤー入門
低レイヤー入門低レイヤー入門
低レイヤー入門
 
GDKとLLVM(横浜PF部向け)
GDKとLLVM(横浜PF部向け)GDKとLLVM(横浜PF部向け)
GDKとLLVM(横浜PF部向け)
 
組込Android本の執筆環境
組込Android本の執筆環境組込Android本の執筆環境
組込Android本の執筆環境
 
ゲーム屋的パフォーマンスチューニング
ゲーム屋的パフォーマンスチューニングゲーム屋的パフォーマンスチューニング
ゲーム屋的パフォーマンスチューニング
 
Linuxカーネルから紐解くAndroid
Linuxカーネルから紐解くAndroidLinuxカーネルから紐解くAndroid
Linuxカーネルから紐解くAndroid
 
基礎から学ぶ組み込みAndroid
基礎から学ぶ組み込みAndroid基礎から学ぶ組み込みAndroid
基礎から学ぶ組み込みAndroid
 
Android&Web&Titanium
Android&Web&TitaniumAndroid&Web&Titanium
Android&Web&Titanium
 
Gdgd発表スライド
Gdgd発表スライドGdgd発表スライド
Gdgd発表スライド
 
Android & BeagleBoardで組込入門
Android & BeagleBoardで組込入門Android & BeagleBoardで組込入門
Android & BeagleBoardで組込入門
 
AppBank 村井氏 講演資料
AppBank 村井氏 講演資料AppBank 村井氏 講演資料
AppBank 村井氏 講演資料
 
Androidとは。ちょっと変った視点から
Androidとは。ちょっと変った視点からAndroidとは。ちょっと変った視点から
Androidとは。ちょっと変った視点から
 
現在のCOM事情
現在のCOM事情現在のCOM事情
現在のCOM事情
 
Yet Another Development Language
Yet Another Development LanguageYet Another Development Language
Yet Another Development Language
 

いまさら聞けないRuby1.9

  • 1. 2009 10 5
  • 2. 2009 10 5
  • 3. 2009 10 5
  • 4. 2009 10 5
  • 5. Multilingualization (M17N) 2009 10 5
  • 6. 2009 10 5
  • 7. 2009 10 5
  • 8. 2009 10 5
  • 9. 2009 10 5
  • 10. 2009 10 5
  • 11. $ cd ~/src $ darcs get http://eigenclass.org/repos/ruby-changelog $ cd ruby-changelog $ ruby ruby18-19.rb ruby18 ruby19 2009 10 5
  • 12. 2009 10 5
  • 13. def fib(n) n <= 1 ? 1 : fib(n-1) + fib(n-2) end n = (ENV['N'] || $N || 35).to_i p fib(n) 2009 10 5
  • 14. [SnowLeopard]% time ruby -s fib-bench.rb -N=35 ruby -s fib-bench.rb -N=35 15.78s user 0.04s system 99% cpu 15.958 total [SnowLeopard]e% time ruby19 -s fib-bench.rb -N=35 ruby19 -s fib-bench.rb -N=35 2.62s user 0.01s system 98% cpu 2.665 total [SnowLeopard]% time jruby -s fib-bench.rb -N=35 jruby -s fib-bench.rb -N=35 3.06s user 0.38s system 58% cpu 5.854 total 2009 10 5
  • 15. 2009 10 5
  • 16. % ruby bench.rb -n 1000 *** ntimes=1000, testmode=execute user system total real ERB 1.460000 0.030000 1.490000 ( 1.499990) ERB(cached) 0.660000 0.030000 0.690000 ( 0.698136) Erubis::Eruby 0.930000 0.020000 0.950000 ( 0.955335) Erubis::Eruby(cached) 0.630000 0.030000 0.660000 ( 0.666248) Erubis::FastEruby 0.870000 0.030000 0.900000 ( 0.901067) Erubis::FastEruby(cached) 0.540000 0.030000 0.570000 ( 0.582040) ruby19 bench.rb -n 1000 *** ntimes=1000, testmode=execute user system total real ERB 1.400000 0.050000 1.450000 ( 1.471488) ERB(cached) 0.800000 0.040000 0.840000 ( 0.852346) Erubis::Eruby 1.040000 0.030000 1.070000 ( 1.080901) Erubis::Eruby(cached) 0.750000 0.040000 0.790000 ( 0.785487) Erubis::FastEruby 1.020000 0.030000 1.050000 ( 1.064794) Erubis::FastEruby(cached) 0.700000 0.040000 0.740000 ( 0.742450) 2009 10 5
  • 17. 2009 10 5
  • 18. 2009 10 5
  • 19. 2009 10 5
  • 20. 2009 10 5
  • 21. 2009 10 5
  • 22. 2009 10 5
  • 23. 2009 10 5
  • 24. 2009 10 5
  • 25. 2009 10 5
  • 26. 2009 10 5