SlideShare a Scribd company logo
1 of 20
10年前のRuby、10年後のRuby 日本Rubyの会 arton(AkioTajima)
自己紹介 Ruby歴 12年 (1999/12/ruby1.4~ ) ActiveScriptRuby IActiveScript ラッパー forRuby MicrosoftInstallerPackage Rjb (RubyJavaBridge) gem install rjb Rubyコミッター
広告
10年前のRuby オブジェクト指向
現在のRuby メタプログラミング
10年後のRuby ?
ケーススタディ1から100までの加算
ステートメント(B.R.) x = 0 for i in (1..10)  x += i end p x
イテレータ(20世紀Ruby) x = 0 1.upto(10) do |i|  x += i end p x
Enumerable#inject (since 1.7) x = 1.upto(10).inject do |r, e|  r + e end p x 2002 – 10年の歴史
Symbol#to_proc(since 1.9) x = 1.upto(10).inject(:+) p x 2008- 5年の歴史
10年後 ?
goruby $./configure $make golf $goruby –e ‘p 1.up(10).inj:+’ 55
メタプログラミング コードを生成するプログラムを作るのが難しければ、コードを生成するプログラムを生成するプログラムをすればいいじゃないか
おもちゃとは そこにあって ちょっとした知識と技術と 不足感=満ち足りた状態への想像力 作って壊しての繰り返しが楽しめる 楽しめなければ意味がない 例)家
プラットフォーム コンピュータ 軍用 商用 電卓 -> マイクロプロセッサ パーソナルコンピュータ  楽しいおもちゃ ビジネスツール インターネット専用アプライアンス(電化製品)
電話 電話 携帯電話  ここまでアプライアンス スマートフォン アップル -> アプライアンス Android -> おもちゃっぽい
おもちゃとしてのアプライアンス ?
おもちゃとしてのアプライアンス 1950 GE、RCA 1960~ 松下、日立、東芝 2000~ ハイアール もし携帯と同様な拡散があるならば 安全性の要求
終わらない

More Related Content

Similar to Decades around here

TokyoR24 - PerformanceRvsC#
TokyoR24 - PerformanceRvsC#TokyoR24 - PerformanceRvsC#
TokyoR24 - PerformanceRvsC#ta2c
 
Observable Everywhere - Rxの原則とUniRxにみるデータソースの見つけ方
Observable Everywhere  - Rxの原則とUniRxにみるデータソースの見つけ方Observable Everywhere  - Rxの原則とUniRxにみるデータソースの見つけ方
Observable Everywhere - Rxの原則とUniRxにみるデータソースの見つけ方Yoshifumi Kawai
 
そんな装備で大丈夫か?
そんな装備で大丈夫か?そんな装備で大丈夫か?
そんな装備で大丈夫か?2celeb
 
Ruby Sapporo Night Vol4
Ruby Sapporo Night Vol4Ruby Sapporo Night Vol4
Ruby Sapporo Night Vol4Koji SHIMADA
 
Ruby Enterprise Environment
Ruby Enterprise EnvironmentRuby Enterprise Environment
Ruby Enterprise EnvironmentTomoya Kawanishi
 
nomlab_okayamaruby_slide
nomlab_okayamaruby_slidenomlab_okayamaruby_slide
nomlab_okayamaruby_slidenomlab
 
Ruby でつくる型付き Ruby
Ruby でつくる型付き RubyRuby でつくる型付き Ruby
Ruby でつくる型付き Rubymametter
 
Ruby で高速なプログラムを書く
Ruby で高速なプログラムを書くRuby で高速なプログラムを書く
Ruby で高速なプログラムを書くmametter
 
Rubinius Under a Microscope
Rubinius Under a MicroscopeRubinius Under a Microscope
Rubinius Under a Microscope高広 内山
 
普通のプログラミング言語R
普通のプログラミング言語R普通のプログラミング言語R
普通のプログラミング言語RShuyo Nakatani
 
JavaとRubyのすてきな関係
JavaとRubyのすてきな関係JavaとRubyのすてきな関係
JavaとRubyのすてきな関係garden_tree
 
SQL上級者こそ知って欲しい、なぜO/Rマッパーが重要か?
SQL上級者こそ知って欲しい、なぜO/Rマッパーが重要か?SQL上級者こそ知って欲しい、なぜO/Rマッパーが重要か?
SQL上級者こそ知って欲しい、なぜO/Rマッパーが重要か?kwatch
 
Rk10trailer
Rk10trailerRk10trailer
Rk10trailermseki
 
RubyKaigi Lightning Talks TwYM episode2
RubyKaigi Lightning Talks TwYM episode2RubyKaigi Lightning Talks TwYM episode2
RubyKaigi Lightning Talks TwYM episode2Kuniaki Igarashi
 
【入門】3時間でアプリ公開!ゼロからのプログラミングRails講座
【入門】3時間でアプリ公開!ゼロからのプログラミングRails講座【入門】3時間でアプリ公開!ゼロからのプログラミングRails講座
【入門】3時間でアプリ公開!ゼロからのプログラミングRails講座DIVE INTO CODE Corp.
 
10min r study_tokyor25
10min r study_tokyor2510min r study_tokyor25
10min r study_tokyor25Nobuaki Oshiro
 
10min r study_tokyor25
10min r study_tokyor2510min r study_tokyor25
10min r study_tokyor25Nobuaki Oshiro
 

Similar to Decades around here (20)

TokyoR24 - PerformanceRvsC#
TokyoR24 - PerformanceRvsC#TokyoR24 - PerformanceRvsC#
TokyoR24 - PerformanceRvsC#
 
Observable Everywhere - Rxの原則とUniRxにみるデータソースの見つけ方
Observable Everywhere  - Rxの原則とUniRxにみるデータソースの見つけ方Observable Everywhere  - Rxの原則とUniRxにみるデータソースの見つけ方
Observable Everywhere - Rxの原則とUniRxにみるデータソースの見つけ方
 
そんな装備で大丈夫か?
そんな装備で大丈夫か?そんな装備で大丈夫か?
そんな装備で大丈夫か?
 
Ruby Sapporo Night Vol4
Ruby Sapporo Night Vol4Ruby Sapporo Night Vol4
Ruby Sapporo Night Vol4
 
Ruby Enterprise Environment
Ruby Enterprise EnvironmentRuby Enterprise Environment
Ruby Enterprise Environment
 
nomlab_okayamaruby_slide
nomlab_okayamaruby_slidenomlab_okayamaruby_slide
nomlab_okayamaruby_slide
 
Ruby でつくる型付き Ruby
Ruby でつくる型付き RubyRuby でつくる型付き Ruby
Ruby でつくる型付き Ruby
 
Ruby で高速なプログラムを書く
Ruby で高速なプログラムを書くRuby で高速なプログラムを書く
Ruby で高速なプログラムを書く
 
Rubinius Under a Microscope
Rubinius Under a MicroscopeRubinius Under a Microscope
Rubinius Under a Microscope
 
普通のプログラミング言語R
普通のプログラミング言語R普通のプログラミング言語R
普通のプログラミング言語R
 
JavaとRubyのすてきな関係
JavaとRubyのすてきな関係JavaとRubyのすてきな関係
JavaとRubyのすてきな関係
 
SQL上級者こそ知って欲しい、なぜO/Rマッパーが重要か?
SQL上級者こそ知って欲しい、なぜO/Rマッパーが重要か?SQL上級者こそ知って欲しい、なぜO/Rマッパーが重要か?
SQL上級者こそ知って欲しい、なぜO/Rマッパーが重要か?
 
Rk10trailer
Rk10trailerRk10trailer
Rk10trailer
 
RubyKaigi Lightning Talks TwYM episode2
RubyKaigi Lightning Talks TwYM episode2RubyKaigi Lightning Talks TwYM episode2
RubyKaigi Lightning Talks TwYM episode2
 
【入門】3時間でアプリ公開!ゼロからのプログラミングRails講座
【入門】3時間でアプリ公開!ゼロからのプログラミングRails講座【入門】3時間でアプリ公開!ゼロからのプログラミングRails講座
【入門】3時間でアプリ公開!ゼロからのプログラミングRails講座
 
ATN No.2 Scala事始め
ATN No.2 Scala事始めATN No.2 Scala事始め
ATN No.2 Scala事始め
 
10min r study_tokyor25
10min r study_tokyor2510min r study_tokyor25
10min r study_tokyor25
 
10min r study_tokyor25
10min r study_tokyor2510min r study_tokyor25
10min r study_tokyor25
 
JRuby on Rails
JRuby on RailsJRuby on Rails
JRuby on Rails
 
Rubyな日々
Rubyな日々Rubyな日々
Rubyな日々
 

More from Akio Tajima

変身動物園.pptx
変身動物園.pptx変身動物園.pptx
変身動物園.pptxAkio Tajima
 
Rails,RSpec & Capybara で困った話
Rails,RSpec & Capybara で困った話Rails,RSpec & Capybara で困った話
Rails,RSpec & Capybara で困った話Akio Tajima
 
子供は本を読み、本は子供に読まれる
子供は本を読み、本は子供に読まれる子供は本を読み、本は子供に読まれる
子供は本を読み、本は子供に読まれるAkio Tajima
 
DSLの過去と未来
DSLの過去と未来DSLの過去と未来
DSLの過去と未来Akio Tajima
 
RJB - another choice for Ruby and Java interoperability
RJB - another choice for Ruby and Java interoperabilityRJB - another choice for Ruby and Java interoperability
RJB - another choice for Ruby and Java interoperabilityAkio Tajima
 
Ruby on windows 2010
Ruby on windows 2010Ruby on windows 2010
Ruby on windows 2010Akio Tajima
 
Ruby – The Scripting Language
Ruby – The Scripting LanguageRuby – The Scripting Language
Ruby – The Scripting LanguageAkio Tajima
 
Ruby Extended Library
Ruby Extended LibraryRuby Extended Library
Ruby Extended LibraryAkio Tajima
 

More from Akio Tajima (14)

変身動物園.pptx
変身動物園.pptx変身動物園.pptx
変身動物園.pptx
 
Rails,RSpec & Capybara で困った話
Rails,RSpec & Capybara で困った話Rails,RSpec & Capybara で困った話
Rails,RSpec & Capybara で困った話
 
子供は本を読み、本は子供に読まれる
子供は本を読み、本は子供に読まれる子供は本を読み、本は子供に読まれる
子供は本を読み、本は子供に読まれる
 
C# on lambda
C# on lambdaC# on lambda
C# on lambda
 
DSLの過去と未来
DSLの過去と未来DSLの過去と未来
DSLの過去と未来
 
Nougakudo
NougakudoNougakudo
Nougakudo
 
RJB - another choice for Ruby and Java interoperability
RJB - another choice for Ruby and Java interoperabilityRJB - another choice for Ruby and Java interoperability
RJB - another choice for Ruby and Java interoperability
 
Ruby on windows 2010
Ruby on windows 2010Ruby on windows 2010
Ruby on windows 2010
 
Ruby – The Scripting Language
Ruby – The Scripting LanguageRuby – The Scripting Language
Ruby – The Scripting Language
 
Asr
AsrAsr
Asr
 
N Lize
N LizeN Lize
N Lize
 
Ruby Extended Library
Ruby Extended LibraryRuby Extended Library
Ruby Extended Library
 
Yarvmi
YarvmiYarvmi
Yarvmi
 
Rubyize
RubyizeRubyize
Rubyize
 

Decades around here