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ハッカーは息をするようにCPANモジュールを書く
Search
typester
September 29, 2012
Programming
5
7.4k
Perlハッカーは息をするようにCPANモジュールを書く
YAPC::Asia 2012
typester
September 29, 2012
Tweet
Share
More Decks by typester
See All by typester
サーバーサイドエンジニアのためのiOSアプリ開発入門
typester
0
4.8k
Emacs実践入門 Perl編
typester
0
2.7k
XSにまつわる話
typester
4
2.2k
UV - libuv binding for Perl
typester
1
6.1k
Hacking Mac OS X Cocoa API from Perl
typester
2
420
Other Decks in Programming
See All in Programming
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
570
Combinatorial Interview Problems with Backtracking Solutions - From Imperative Procedural Programming to Declarative Functional Programming - Part 2
philipschwarz
PRO
0
130
perlをWebAssembly上で動かすと何が嬉しいの??? / Where does Perl-on-Wasm actually make sense?
mackee
0
260
tsgolintはいかにしてtypescript-goの非公開APIを呼び出しているのか
syumai
7
2.4k
AtCoder Conference 2025「LLM時代のAHC」
imjk
2
620
ゲームの物理 剛体編
fadis
0
390
Claude Codeの「Compacting Conversation」を体感50%減! CLAUDE.md + 8 Skills で挑むコンテキスト管理術
kmurahama
1
700
GISエンジニアから見たLINKSデータ
nokonoko1203
0
190
re:Invent 2025 のイケてるサービスを紹介する
maroon1st
0
160
Cap'n Webについて
yusukebe
0
160
Jetpack XR SDKから紐解くAndroid XR開発と技術選定のヒント / about-androidxr-and-jetpack-xr-sdk
drumath2237
1
230
リリース時」テストから「デイリー実行」へ!開発マネージャが取り組んだ、レガシー自動テストのモダン化戦略
goataka
0
150
Featured
See All Featured
Optimizing for Happiness
mojombo
379
70k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
34k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
61
51k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
115
100k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.1k
Test your architecture with Archunit
thirion
1
2.1k
4 Signs Your Business is Dying
shpigford
187
22k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
260
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
The untapped power of vector embeddings
frankvandijk
1
1.5k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
0
2.3k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
96
Transcript
1FSMϋοΧʔଉΛ͢ΔΑ͏ʹ $1"/ϞδϡʔϧΛॻ͘ !UZQFTUFS ,":"$*OD
ࠓͿΓʹࣄͰ1FSMΛΓ Γ͔͓ͭͬͯΓɺ
ຊʹଉΛ͢ΔΑ͏ʹ1FSMϞδϡʔϧΛ ॻ͍͍ͯͨͳʔɺͱ͍͏͜ͱͰɺ
·ͣɺࠓॻ͍ͨϞδϡʔϧΛ հ͠·͢
%BUB"QQMF1SJDF5JFS
%BUB"QQMF1SJDF5JFS w"QQ4UPSFͷQSJDFUJFS UJFS͕ຊͩͱˇɺͱ͍͏ͷΛม͢ ΔϞδϡʔϧ
%BUB"QQMF1SJDF5JFS w"QQ4UPSFͷQSJDFUJFS UJFS͕ຊͩͱˇɺͱ͍͏ͷΛม͢ ΔϞδϡʔϧ wಈػ wඞཁʹഭΒΕͯ wIUUQTQBCFSJTINF
%BUB.FTTBHF1BDL4USFBN
%BUB.FTTBHF1BDL4USFBN w.FTTBHF1BDLͷετϦʔϛϯάύʔαʔ
%BUB.FTTBHF1BDL4USFBN w.FTTBHF1BDLͷετϦʔϛϯάύʔαʔ wಈػ w%BUB.FTTBHF1BDLͷιʔείʔυ͕ ͗ͨ͢͠ w͙͢ʹཉ͔ͬͨ͠
%BUB9-491BSTFS
%BUB9-491BSTFS wߴͳYMTYϑΝΠϧύʔαʔ
%BUB9-491BSTFS wߴͳYMTYϑΝΠϧύʔαʔ wಈػ w4QSFBETIFFU9-49͕ϝϞϦΛ৯͍ա ͗ͯཁ݅ΛΫϦΞͰ͖ͳ͔ͬͨ w1ZUIPOʹྑ͍࣮͕͋ͬͨͷͰͦΕΛҠ ২
4VC3BUF
4VC3BUF w͕͔֬ΒΉॲཧΛྑ͍ײ͡ʹ͍ͨ͠ͱ͖ʹ ͏Ϟδϡʔϧ
4VC3BUF w͕͔֬ΒΉॲཧΛྑ͍ײ͡ʹ͍ͨ͠ͱ͖ʹ ͏Ϟδϡʔϧ wಈػ w͜͏͍͏ͷ͕ཉ͔ͬͨ͠
4VC&YDFQUJPO
4VC&YDFQUJPO wྫ֎ॲཧΛมΘͬͨײ͡Ͱॻ͚ΔϞδϡʔϧ
4VC&YDFQUJPO wྫ֎ॲཧΛมΘͬͨײ͡Ͱॻ͚ΔϞδϡʔϧ wಈػ w͜͏͍͏ͷ͕ཉ͔ͬͨ͠ɺ͍ͬͯ͏Θ͚Ͱ ͳͯ͘ͳΜͱͳ͘ࢥ͍͍͔ͭͨΒ
5FTU3FEJT4FSWFS
5FTU3FEJT4FSWFS w5FTUNZTRMEͷSFEJTόʔδϣϯ
5FTU3FEJT4FSWFS w5FTUNZTRMEͷSFEJTόʔδϣϯ wಈػ wඞཁʹഭΒΕͯ
+40/5ZQFT
+40/5ZQFT w+40/Λ࡞Δͱ͖ʹԽͨ͠Γ͢Δͱ͖ʹ OVNCFS Έ͍ͨͳṖͷϋοΫ͢Δͷ ͍ͩͳʔ͍ͬͯ͏ͷΛͳΜͱ͔͢ΔͨΊ ͚ͩͷϞδϡʔϧ
$PDPB#BUUFSZ*OGP
$PDPB#BUUFSZ*OGP w.BDͰόοςϦʔใΛऔಘͨ͠Γɺόος ϦʔؔͷΠϕϯτΛίʔϧόοΫͰऔಘͰ ͖ΔϞδϡʔϧ
$PDPB#BUUFSZ*OGP w.BDͰόοςϦʔใΛऔಘͨ͠Γɺόος ϦʔؔͷΠϕϯτΛίʔϧόοΫͰऔಘͰ ͖ΔϞδϡʔϧ wಈػ wόοςϦʔܥϥΠϑϋοΫʹඞཁͩͬͨ
w$PDPB$PSF#MVFUPPUI
w$PDPB$PSF#MVFUPPUI w$PDPB"QQMF4DSJQU
w$PDPB$PSF#MVFUPPUI w$PDPB"QQMF4DSJQU wಈػ w:"1$"TJB
Ҏ্ݸ
όʔδϣϯΞοϓطଘϞδϡʔϧͷ ϝϯςφϯε͋ΔͷͰTIJQJUճ ͑Εͳ͍
ଉΛٵ͏Α͏ʹϞδϡʔϧΛॻ͖ɺ
ଉΛ͘Α͏ʹTIJQJU͢Δ
ͦΕ1FSMϋοΧʔʹࣗવͳ͜ͱ
$1"/ʹΞοϓ͢Δͱ ͍ΖΜͳϝϦοτ͕͋Δ
Πϯετʔϧ͕؆୯ DQBON.Z.PEVMF
DQBOUFTUFST
QBUDIFT DPOUSJCVUJPOTGSPN PUIFSQFPQMF
࠶ར༻ͦ͠͏ͳͷશ෦$1"/ʹ ͋͛ͪΌ͏ wDQBONͰ؆୯ʹೖΔ͔Βɺࣗࣗଞͷ ͱ͜ΖͰ͏ͷָ͕ʹ w$1"/ίϛϡχςΟʔʹΑͬͯΫΦϦςΟ͕ ্͕Δ
ͰͳΜ͔มͳͷΞοϓ͢Δͱ UPLV˓JSPNͱ͔ʹ%*4ΒΕΔ͠ʜ
/0ͦΜͳ͜ͱͳ͍ʂ
5IFSFJTNPSFUIBOPOFXBZ UPEPJU
ͨͩ͠ʂ
υΩϡϝϯτΛॻ͜͏
ͦͷϞδϡʔϧΛ࡞͍͍ͬͨΛ υΩϡϝϯτʹॻ͜͏ʂ
υΩϡϝϯτͬͯͷϞδϡʔϧͷ ͍ํΛॻ͚ͩ͘ͷ͡Όͳ͍
ͦͷϞδϡʔϧʹ͍ͨ͢Δ͍Λશ෦ Ϳ͚ͭΔͱ͜ΖͳΜͩʂ
˞%*4ΒΕϙΠϯτΛ͋Β͔͡Ί͓͑ͯ͘͜ͱϞώΧϯରࡦͱͯ͠ඇৗʹ༗ޮͰ͢
υΩϡϝϯτ࡞ͷͭ͜ wQPEܗࣜ׳Εͳ͍ͱࢥ͍·͚͢Ͳɺ͜Ε ͚֮ͩ͑Δ͔͠ͳ͍ w׳Εͳ͍͏ͪਓͷΛਅࣅͨ͠Βྑ͍ wॻ͖·͍ͬͯͨ͘Βͦͷ͏ͪͳʹݟͳ͍Ͱ ී௨ʹ͔͚ΔΑ͏ʹͳΓ·͢
υΩϡϝϯτ࡞ͷͭ͜ wॻ͖͘༰
υΩϡϝϯτ࡞ͷͭ͜ wॻ͖͘༰ w4:/014*4ͬ͘͞Γ͍ͨ͠ํͷίʔυ
υΩϡϝϯτ࡞ͷͭ͜ wॻ͖͘༰ w4:/014*4ͬ͘͞Γ͍ͨ͠ํͷίʔυ w%&4$3*15*0/͍͍
υΩϡϝϯτ࡞ͷͭ͜ wॻ͖͘༰ w4:/014*4ͬ͘͞Γ͍ͨ͠ํͷίʔυ w%&4$3*15*0/͍͍ w.&5)0%4'6/$5*0/4 ֤ϝιουɺؔΛઆ໌
$1"/Ϟδϡʔϧ࡞ͷϙΠϯτ
$1"/Ϟδϡʔϧ࡞ͷϙΠϯτ wΧδϡΞϧʹ࡞ͬͯྑ͍͚ͲɺυΩϡϝϯτ ͔ͬ͠Γॻ͜͏
$1"/Ϟδϡʔϧ࡞ͷϙΠϯτ wΧδϡΞϧʹ࡞ͬͯྑ͍͚ͲɺυΩϡϝϯτ ͔ͬ͠Γॻ͜͏ w্͛ͨҎ্ϝϯςφϯεΛܧଓ͠·͠ΐ͏
$1"/Ϟδϡʔϧ࡞ͷϙΠϯτ wΧδϡΞϧʹ࡞ͬͯྑ͍͚ͲɺυΩϡϝϯτ ͔ͬ͠Γॻ͜͏ w্͛ͨҎ্ϝϯςφϯεΛܧଓ͠·͠ΐ͏ w%*4༑ୡͰ͢ʂ
HJUIVCʹͬͯΔϞδϡʔϧ ͋ͬͨΓ͠·ͤΜ͔ʁ
ා͘ͳ͍͔ΒΞοϓͯ͠ΈΑ͏ʂ
5IBOLZPV