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
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
moznion
October 07, 2024
Technology
3
3.2k
これはPerl? それともRuby? クイズ〜〜〜〜〜!!!- Perl or Ruby Quiz
YAPC::Hakodate 2024のLT資料です
moznion
October 07, 2024
Tweet
Share
More Decks by moznion
See All by moznion
履歴テーブル、今回はこう作りました 〜 Delegated Types編 〜 / How We Built Our History Table This Time — With Delegated Types
moznion
16
12k
「データ無い! 腹立つ! 推論する!」から 「データ無い! 腹立つ! データを作る」へ チームでデータを作り、育てられるようにするまで / How can we create, use, and maintain data ourselves?
moznion
11
7.1k
避けられないI/O待ちに対処する: Rails アプリにおけるSSEとasync gemの活用 / Tackling Inevitable I/O Latency in Rails Apps with SSE and the async gem
moznion
4
5.7k
RubyKaigi Hack Space in Tokyo & 函館最速 "予習" 会 / RubyKaigi Hack Space in Tokyo & The Fastest Briefing of RubyKaigi 2026 in Hakodate
moznion
1
360
地に足の付いた現実的な技術選定から魔力のある体験を得る『AIレシート読み取り機能』のケーススタディ / From Grounded Tech Choices to Magical UX: A Case Study of AI Receipt Scanning
moznion
7
4.8k
Chrome Extension Techniques from Hell
moznion
1
280
Simple組み合わせ村から大都会Railsにやってきた俺は / Coming to Rails from the Simple
moznion
4
8.6k
AIレシート読み取り機能をRuby on Rails on AWSで実現するLLMにまつわるアレコレ / AI-based receipt reading function powered by LLM on Ruby on Rails on AWS
moznion
3
1.2k
Develop to Survive - YAPC::Hakodate 2024 Keynote
moznion
11
22k
Other Decks in Technology
See All in Technology
IBM Bobを使って、PostgreSQLのToDoアプリをDb2へ変換してみよう/202603_Dojo_Bob
mayumihirano
1
300
生成AIの利用とセキュリティ /gen-ai-and-security
mizutani
1
1.6k
JAWS FESTA 2025でリリースしたほぼリアルタイム文字起こし/翻訳機能の構成について
naoki8408
1
300
JAWSDAYS2026_A-6_現場SEが語る 回せるセキュリティ運用~設計で可視化、AIで加速する「楽に回る」運用設計のコツ~
shoki_hata
0
3k
情シスのための生成AI実践ガイド2026 / Generative AI Practical Guide for Business Technology 2026
glidenote
0
190
技術的負債の泥沼から組織を救う3つの転換点
nwiizo
8
3.6k
Yahoo!ショッピングのレコメンデーション・システムにおけるML実践の一例
lycorptech_jp
PRO
1
190
Security Diaries of an Open Source IAM
ahus1
0
210
マルチロールEMが実践する「組織のレジリエンス」を高めるための組織構造と人材配置戦略
coconala_engineer
3
710
vLLM Community Meetup Tokyo #3 オープニングトーク
jpishikawa
0
320
Go標準パッケージのI/O処理をながめる
matumoto
0
100
[E2]CCoEはAI指揮官へ。Bedrock×MCPで構築するコスト・セキュリティ自律運用基盤
taku1418
0
130
Featured
See All Featured
Exploring anti-patterns in Rails
aemeredith
2
290
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
480
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
230
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Music & Morning Musume
bryan
47
7.1k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
390
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
470
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
100
A Tale of Four Properties
chriscoyier
163
24k
Building AI with AI
inesmontani
PRO
1
780
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
110k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
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ͬͯࣅͯ·͢Ͷ