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
Perl6 ecosystem
Search
Shoichi Kaji
March 03, 2018
Programming
1
1.4k
Perl6 ecosystem
YAPC::Okinawa 2018 ONNASON 03/03
Shoichi Kaji
March 03, 2018
Tweet
Share
More Decks by Shoichi Kaji
See All by Shoichi Kaji
Parallel::Pipesの紹介
skaji
2
880
宿泊予約サイトにおける検索と料金計算の両立
skaji
2
3.8k
昔のGo, 今のGo ~比較, ソート編~
skaji
0
230
Perl Quiz
skaji
0
140
cpm at PerlCon 2019
skaji
0
110
Perl5 Package Manager
skaji
0
710
Internal of cpm
skaji
0
620
How to execute external programs in Perl
skaji
3
650
Writing Perl with w0rp/ale
skaji
0
2.3k
Other Decks in Programming
See All in Programming
TypeScript製IaCツールのAWS CDKが様々な言語で実装できる理由 ~他言語変換の仕組み~ / cdk-language-transformation
gotok365
7
400
TypeScript を活かしてデザインシステム MCP を作る / #tskaigi_after_night
izumin5210
4
490
TypeScript Language Service Plugin で CSS Modules の開発体験を改善する
mizdra
PRO
3
2.5k
Cursor Meetup Tokyo ゲノミクスとCursor: 進化と制約のあいだ
koido
2
610
Passkeys for Java Developers
ynojima
2
660
事業戦略を理解してソフトウェアを設計する
masuda220
PRO
15
4.1k
PT AI без купюр
v0lka
0
200
イベントストーミングから始めるドメイン駆動設計
jgeem
3
630
Javaに鉄道指向プログラミング (Railway Oriented Pro gramming) のエッセンスを取り入れる/Bringing the Essence of Railway-Oriented Programming to Java
cocet33000
1
330
RubyKaigiで得られる10の価値 〜Ruby話を聞くことだけが RubyKaigiじゃない〜
tomohiko9090
0
110
TypeScriptのmoduleオプションを改めて整理する
bicstone
4
440
What Spring Developers Should Know About Jakarta EE
ivargrimstad
1
650
Featured
See All Featured
Thoughts on Productivity
jonyablonski
69
4.7k
Code Reviewing Like a Champion
maltzj
523
40k
Fireside Chat
paigeccino
37
3.5k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
15
890
The Language of Interfaces
destraynor
158
25k
Mobile First: as difficult as doing things right
swwweet
223
9.6k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
19
1.3k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Documentation Writing (for coders)
carmenintech
71
4.8k
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Transcript
Perl6ͷecosystem Shoichi Kaji
Me • Shoichi Kaji • CPAN, github: skaji • Perl5:
cpm • Perl6: mi6
͡Ίʹ • 2015ΫϦεϚε Perl6ϦϦʔε • ຊͰtokuhirom͞Μ͕த৺ͱͳΓ Plack cloneͰ͋ΔCrustΛ࡞ͬͨΓͯ͠Γ্͕ͬͨ • ϦϦʔε͔Β23ϲ݄ܦա
• ண࣮ʹ҆ఆੑɺ͕վળ͖ͯͨ͠ • ecosystem·ΘΓมԽɻࠓ͜͜Λհ͍ͨ͠
Contents • ecosystemͱ? • ecosystem: Perl5 • ecosystem: ϦϦʔε࣌ͷPerl6 •
ecosystem: ࠓͷPerl6 • Perl6 moduleͷΦʔαϦϯά • ·ͱΊ • Perl6 ecosystemͷࠓޙ
ecosystemͱ? • ͜͜Ͱʮ࠶ར༻ՄೳͳϓϩάϥϜͷɺΠϯετʔϧͷΈʯͱ ͢Δ • PerlͰʮ࠶ར༻ՄೳͳϓϩάϥϜʯͱmoduleɺͦ͘͠ΕΛ·ͱ ΊͨdistributionͰ͋Δ • ecosystemͷதͰҎԼʹண͢Δ •
ॴ • index • installer
Perl5 • ॴ • CPAN (via PAUSE) • Index •
02packages.details.txt created by PAUSE • cpanmetadb • metacpan • installer • CPAN.pm, CPANPLUS, cpanminus
ϦϦʔε࣌ͷPerl6 • ॴ • github • index • https://github.com/perl6/ecosystem ͷMETA.list
PRͰՃ • installer • panda
ࠓͷPerl6 • ॴ • CPAN (via PAUSE) • index •
App::ecogen • installer • zef
ࠓͷPerl6 - PAUSE • CPANʹPerl5 distribution͋ΔͷͰɺ୯७ʹPerl6 distributionupload͢Δͱ໊લ͕িಥͯ͠͠·͏ɻͲ͏͢Δ͔ • PAUSEʹdistribution͕upload͞Εͨͱ͖ •
META6.jsonΛؚΉ߹ɺPerl6 distributionͱஅ • ͦͷͱ͖ɺࣗಈతʹ S/SK/SKAJI/Perl6/ ҎԼʹஔ • ࠓͷͱ͜ΖɺPerl6σΟϨΫϦҎԼʹஔ͢ΔҎ֎ɺ ಛผͳૢ࡞͍ͯ͠ͳ͍
ࠓͷPerl6 - App::ecogen • ఆظతʹCPANΛrsyncͯ͠ Perl6 distributionͷindexΛ࡞͍ͬͯΔ • ڧ͍:)
ࠓͷPerl6 - zef • A module installer by Nick Logan
(ugexe) • Perl6ͷfeatureΛ;ΜͩΜʹͬͨ ͷߴ͍module installer • rakudoͷbugͷworkaround͕ ݁ߏೖ͍ͬͯΔҹ:)
Perl6 moduleͷΦʔαϦϯά • ecosystemΘ͔ͬͨɻͰͲ͏ͬͯ Perl6 moduleΛॻ͍͍͔ͯ͘ • mi6 • Minilla/Dist::Milla
clone • Now it has "release" command that uploads distributions to CPAN!
Perl6 moduleͷΦʔαϦϯά › mi6 new Your::Module # hack, hack, hack!
› cd Your::Module; vim lib/Your/Module.pm › mi6 release ==> Release distribution to CPAN There are 11 steps: * Step 1. CheckChanges * Step 2. CheckOrigin * Step 3. CheckUntrackedFiles * Step 4. BumpVersion * Step 5. RegenerateFiles * Step 6. DistTest * Step 7. MakeDist * Step 8. UploadToCPAN * Step 9. RewriteChanges * Step10. GitCommit * Step11. CreateGitTag distributionͷ εέϧτϯ࡞͔Β CPANͷupload·Ͱ Ͱ͖Δ
·ͱΊ • ࠓͷPerl6ͷecosystemԼه3͔ͭΒͳΔ • CPAN (via PAUSE) • App::ecogen •
zef • mi6Λ͏͜ͱͰ؆୯ʹPerl6 moduleͷ ΦʔαϦϯάɺCPANͷupload͕Ͱ͖Δ
Perl6 ecosystemͷࠓޙ • PAUSEͰindex࡞? • Ұ࣌ظFROGGS͞Μ͕PAUSEʹPerl6 moduleઐ༻ͷ ॲཧΛ࣮͠Α͏ͱ͍ͯͨ͠ɻͦΕ͕ਐΉ͔ • CPAN
Testersͱͷ࿈ܞ? • Perl Toolchain Summit 2017Ͱগ͠ਐల͕͋ͬͨ • MetaCPANͱͷ࿈ܞ?