Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Wroclove.rb - JRuby vs. Rubinius
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Dirkjan Bussink
March 14, 2012
Technology
1
120
Wroclove.rb - JRuby vs. Rubinius
Fighting for the Rubinius side
Dirkjan Bussink
March 14, 2012
Tweet
Share
More Decks by Dirkjan Bussink
See All by Dirkjan Bussink
Managing a widely distributed team
dbussink
1
200
Time
dbussink
0
120
The tricky truth about parallel execution and modern hardware
dbussink
0
370
The future of Ruby is faster
dbussink
3
550
Security for dummies
dbussink
1
170
The myth of dynamic language performance
dbussink
3
480
Rubinius - Tales from the trenches @ Railsclub.ru 2012
dbussink
2
230
Rubinius - Tales from the trenches @ Baruco 2012
dbussink
1
280
Rubinius Eurucamp 2012 Workshop
dbussink
2
130
Other Decks in Technology
See All in Technology
Digitization部 紹介資料
sansan33
PRO
1
6.9k
Devinを導入したら予想外の人たちに好評だった
tomuro
0
350
AI が Approve する開発フロー / How AI Reviewers Accelerate Our Development
zaimy
1
220
クラウド時代における一時権限取得
krrrr38
1
120
OCI技術資料 : 外部接続 VPN接続 詳細
ocise
1
10k
全自動で回せ!Claude Codeマーケットプレイス運用術
yukyu30
3
140
なぜAIは組織を速くしないのか 令和の腑分け
sugino
79
48k
マイグレーションガイドに書いてないRiverpod 3移行話
taiju59
0
320
【SLO】"多様な期待値" と向き合ってみた
z63d
2
200
社内ワークショップで終わらせない 業務改善AIエージェント開発
lycorptech_jp
PRO
1
390
Bill One 開発エンジニア 紹介資料
sansan33
PRO
5
18k
Data Hubグループ 紹介資料
sansan33
PRO
0
2.8k
Featured
See All Featured
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.9k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
220
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
1
1.3k
Abbi's Birthday
coloredviolet
2
5k
The Curse of the Amulet
leimatthew05
1
9.2k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
95
エンジニアに許された特別な時間の終わり
watany
106
230k
Code Reviewing Like a Champion
maltzj
527
40k
The Spectacular Lies of Maps
axbom
PRO
1
570
Java REST API Framework Comparison - PWX 2021
mraible
34
9.2k
Writing Fast Ruby
sferik
630
62k
Believing is Seeing
oripsolob
1
68
Transcript
Dirkjan Bussink http://github.com/dbussink @dbussink
None
None
REMOVED
@JRubyMethod(name = {"collect", "map"}, compat = CompatVersion.RUBY1_8) public static IRubyObject
collect(ThreadContext context, IRubyObject self, final Block block) { final Ruby runtime = context.getRuntime(); final RubyArray result = runtime.newArray(); if (block.isGiven()) { callEach(runtime, context, self, block.arity(), new BlockCallback() { public IRubyObject call(ThreadContext ctx, IRubyObject[] largs, Block blk) { IRubyObject larg = checkArgs(runtime, largs); IRubyObject value = block.yield(ctx, larg); synchronized (result) { result.append(value); } return runtime.getNil(); } }); } else { callEach(runtime, context, self, Arity.ONE_ARGUMENT, new AppendBlockCallback(runtime, result)); } return result; }
def collect if block_given? ary = [] each do |*o|
ary << yield(*o) end ary else to_enum :collect end end
None
> (x . xs) = [1, 2, 3] [1, 2,
3] > x 1 > xs [2, 3]
1 patch == commit access