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
これはPerl? それともRuby? クイズ〜〜〜〜〜!!!- Perl or Ruby Quiz
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
moznion
October 07, 2024
Technology
3.3k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
これはPerl? それともRuby? クイズ〜〜〜〜〜!!!- Perl or Ruby Quiz
YAPC::Hakodate 2024のLT資料です
moznion
October 07, 2024
More Decks by moznion
See All by moznion
cccccc
moznion
0
1.2k
履歴テーブル、今回はこう作りました 〜 Delegated Types編 〜 / How We Built Our History Table This Time — With Delegated Types
moznion
16
14k
「データ無い! 腹立つ! 推論する!」から 「データ無い! 腹立つ! データを作る」へ チームでデータを作り、育てられるようにするまで / How can we create, use, and maintain data ourselves?
moznion
11
7.4k
避けられないI/O待ちに対処する: Rails アプリにおけるSSEとasync gemの活用 / Tackling Inevitable I/O Latency in Rails Apps with SSE and the async gem
moznion
4
8k
RubyKaigi Hack Space in Tokyo & 函館最速 "予習" 会 / RubyKaigi Hack Space in Tokyo & The Fastest Briefing of RubyKaigi 2026 in Hakodate
moznion
1
420
地に足の付いた現実的な技術選定から魔力のある体験を得る『AIレシート読み取り機能』のケーススタディ / From Grounded Tech Choices to Magical UX: A Case Study of AI Receipt Scanning
moznion
7
5.1k
Chrome Extension Techniques from Hell
moznion
1
310
Simple組み合わせ村から大都会Railsにやってきた俺は / Coming to Rails from the Simple
moznion
4
8.9k
AIレシート読み取り機能をRuby on Rails on AWSで実現するLLMにまつわるアレコレ / AI-based receipt reading function powered by LLM on Ruby on Rails on AWS
moznion
3
1.3k
Other Decks in Technology
See All in Technology
きのこカンファレンス2026_肩書きを外したとき私は誰か
yamasatimi
1
120
Text-to-SQLをAgentCoreで実現し、生成されるSQLの精度を定量的に評価する
yakumo
2
380
次世代ランサムウェア対策の考察 / 20260704 Mitsutoshi Matsuo
shift_evolve
PRO
5
1.7k
5分でわかるDuckDB Quack
chanyou0311
4
300
Fabricをフル活用する AI Agent Hub -製造業特化AIエージェントの設計
iotcomjpadmin
0
190
「軸足」は 固定しなくていい - 熱量と強みで描く、しなやかなキャリアの形
kakehashi
PRO
1
320
5分でわかる Amazon Connect_20260608
hwangbyeonghun
0
170
AWS Summit Japan 2026の振り返りと2027へ向けて / AWS Summit Japan 2026 Recap and Prospects for 2027
kaminashi
1
170
4人目のSREはAgent
tanimuyk
0
360
AWS Blocks を触ってみた/first-tach-aws-blocks
fossamagna
2
120
時期が悪い!それでもRaspberry Piを買って遊んで活用するには / 20260627-osc26do-rpi-jikigawarui
akkiesoft
1
960
背中から、背中へ /paying forward to community
naitosatoshi
0
210
Featured
See All Featured
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
880
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.3k
We Have a Design System, Now What?
morganepeng
55
8.2k
Balancing Empowerment & Direction
lara
6
1.2k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
230
The agentic SEO stack - context over prompts
schlessera
0
840
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
2.1k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
320
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
450
4 Signs Your Business is Dying
shpigford
187
22k
Transcript
͜Ε1FSMʁɹͦΕͱ3VCZʁ ΫΠζʙʙʙʙʙʂʂʂ  :"1$)BLPEBUF-5 !NP[OJPO
ʮ1FSMॻ͚ΔͳΒ3VCZॻ͚ΔΑͶʁʯ
ʮ3VCZॻ͚ΔͳΒ1FSMॻ͚ΔΑͶʁʯ
ͲͪΒਓݖͰ͋Δͱ ͘ೝࣝ͞Ε͍ͯΔ
͓͖ͯ͞ʜʜ ΫΠζʙʙʙʙʂʂʂʂʂ
ճީิ 1. Perl 2. Ruby 3. ྆ํ 4. ͲͪΒͰͳ͍
5. ྆ํͰಈ͕݁͘Ռ͕ҧ͏
2
print "yapc"
print "yapc" ྆ํ
2
say "yapc"
say "yapc" 1FSM
2
print "yapc" print "hakodate"
print "yapc" print "hakodate" 3VCZ
2
print '0' ? 'true' : 'false'
print '0' ? 'true' : 'false' ྆ํͰಈ͕݁͘Ռ͕ҧ͏
2
@l ist = (1..5); print @ l ist;
@l ist = (1..5); print @ l ist; ྆ํͰಈ͕݁͘Ռ͕ҧ͏
2
$_ a = '5'; $_ b = '10'; print
$ _ a + $ _ b;
$_ a = '5'; $_ b = '10'; print
$ _ a + $ _ b; ྆ํͰಈ͕݁͘Ռ͕ҧ͏
2
print $ _
print $ _ ྆ํͰಈ͕݁͘Ռ͕ҧ͏
2
class Example { }
class Example { } 1FSM
2
print true
print true ྆ํ 1FSMͷόʔδϣϯґଘ
use v5.40; print true;
2
class Person attr_accessor :name attr_accessor :age end
class Person attr_accessor :name attr_accessor :age end 3VCZ ͱ͜ΖʹΑΓ1FSM
package Filter; use Filter::Util::Call; sub im port { filter_add([]);
} sub filter { my ( $ self) = @_ ; my $status = filter_read(); return $status if $status <= 0; s/\bclass\s+(\w+)/package $1 {/g; s/\bend\b/}/g; s/\battr_accessor\s+:(\w+)/sub $ 1 { my \$self = shift; \ @ _ ? \$self->{\ $ 1 } = shift : \$self->{\ $1 } }/g; return $status; };
2
attr_accessor 'yapc', 'hakodate'
attr_accessor 'yapc', 'hakodate' 3VCZ ͱ͜ΖʹΑΓ1FSM
use Rubyish::Class; attr_accessor 'yapc', 'hakodate'
2
def add(a, b) a + b end
def add(a, b) a + b end 3VCZ ͱ͜ΖʹΑΓ1FSM
use Inline::Ruby; __END__ __Ruby__ def add(a, b) a +
b end
͍͔͕Ͱ͔ͨ͠ʁ
3VCZͱ1FSMͬͯࣅͯ·͢Ͷ