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
Custom Runtime Lambda empowered by Rust
Search
Yoshihito
July 03, 2020
Programming
3.1k
0
Share
Custom Runtime Lambda empowered by Rust
An introduction about the Lambda custom runtime empowered by Rust language.
Yoshihito
July 03, 2020
More Decks by Yoshihito
See All by Yoshihito
TUI App in Rust
yoshihitoh
0
220
Rust tutorial - implement a cli tool.
yoshihitoh
0
270
introduce-rust.pdf
yoshihitoh
2
540
regrowth2018-introduce-reinvent-sessions
yoshihitoh
0
1k
mobilemethod-2-about-analytic-data.pdf
yoshihitoh
0
1.2k
cpp-library-on-browse-nodejs
yoshihitoh
0
2.7k
Other Decks in Programming
See All in Programming
車輪の再発明をしよう!PHP で実装して学ぶ、Web サーバーの仕組みと HTTP の正体
h1r0
3
510
それはエンジニアリングの糧である:AI開発のためにAIのOSSを開発する現場より / It serves as fuel for engineering: insights from the field of developing open-source AI for AI development.
nrslib
1
830
Kubernetes上でAgentを動かすための最新動向と押さえるべき概念まとめ
sotamaki0421
3
450
年間50登壇、単著出版、雑誌寄稿、Podcast出演、YouTube、CM、カンファレンス主催……全部やってみたので面白さ等を比較してみよう / I’ve tried them all, so let’s compare how interesting they are.
nrslib
4
720
Offline should be the norm: building local-first apps with CRDTs & Kotlin Multiplatform
renaudmathieu
0
160
How Swift's Type System Guides AI Agents
koher
0
190
一度始めたらやめられない開発効率向上術 / Findy あなたのdotfilesを教えて!
k0kubun
4
2.9k
Java 21/25 Virtual Threads 소개
debop
0
340
L’IA au service des devs : Anatomie d'un assistant de Code Review
toham
0
220
Mastering Event Sourcing: Your Parents Holidayed in Yugoslavia
super_marek
0
150
Codex CLI でつくる、Issue から merge までの開発フロー
amata1219
0
330
Smarter Angular mit Transformers.js & Prompt API
christianliebel
PRO
1
120
Featured
See All Featured
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
880
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
110
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
350
How to Ace a Technical Interview
jacobian
281
24k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.7k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
120
The Language of Interfaces
destraynor
162
26k
Documentation Writing (for coders)
carmenintech
77
5.3k
For a Future-Friendly Web
brad_frost
183
10k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
110
GitHub's CSS Performance
jonrohan
1032
470k
Heart Work Chapter 1 - Part 1
lfama
PRO
5
35k
Transcript
RustͰ࢝ΊΔ Custom Runtime Lambdaೖ 2020/7/3 CXࣄۀຊ෦ yoshihitoh
None
!3 ຊ͓͢Δ͜ͱ
!4 ΞδΣϯμ ɾ"84-BNCEB'VODUJPOͱ ɾΧελϜϥϯλΠϜͱ ɾ3VTUͱ ɾ-BNCEB3VTU ɾ·ͱΊ
!5 ຊηογϣϯͷରऀ
!6 ຊηογϣϯͷରऀ ɾ-BNCEB'VODUJPOΛͬͯΈ͍ͨ ɹɾ͚Ͳɺ͍͍ͨݴޠϥϯλΠϜ͕ະαϙʔτ ɾ3VTUॻ͍ͯΈ͍ͨ ɹɾ͚Ͳɺͪΐ͏ͲΑ͍ࡐ͕ͳ͍
!7 ΞδΣϯμ ɾ"84-BNCEB'VODUJPOͱ ɾΧελϜϥϯλΠϜͱ ɾ3VTUͱ ɾ-BNCEB3VTU ɾ·ͱΊ
!8 AWS Lambda Function
!9 AWS Lambda Function - ֓ཁ ɾΠϕϯτۦಈͰΞϓϦέʔγϣϯίʔυΛ࣮ߦ ɾϥϯλΠϜͱϋϯυϥʔΛΈ߹Θ࣮ͤͯݱ ɹɾϋϯυϥʔ ɹɹɾϏδωεϩδοΫ
ɹɾϥϯλΠϜ ɹɹɾΞϓϦέʔγϣϯͷ࣮ߦڥ
!10 AWS Lambda Function - ֓ཁ ɾΠϕϯτۦಈͰΞϓϦέʔγϣϯίʔυΛ࣮ߦ ɾϥϯλΠϜͱϋϯυϥʔΛΈ߹Θ࣮ͤͯݱ ɹɾϥϯλΠϜ ɹɹɾΞϓϦέʔγϣϯͷ࣮ߦڥ
ɹɾϋϯυϥʔ ɹɹɾϏδωεϩδοΫ -BNCEBͷ։ൃͱ͍͑ ϋϯυϥʔͷ࣮
!11 AWS Lambda Function - ֓ཁ ɾΠϕϯτۦಈͰΞϓϦέʔγϣϯίʔυΛ࣮ߦ ɾϥϯλΠϜͱϋϯυϥʔΛΈ߹Θ࣮ͤͯݱ ɹɾϋϯυϥʔ ɹɹɾϏδωεϩδοΫ
ɹɾϥϯλΠϜ ɹɹɾΞϓϦέʔγϣϯͷ࣮ߦڥ ຊηογϣϯͰ ͕ͬͪ͜ϝΠϯ
!12 ϥϯλΠϜʁ 'VODUJPO࡞࣌ʹ ϥϯλΠϜΛબ͢Δ
!13 ϥϯλΠϜҰཡ ༷ʑͳϥϯλΠϜ͕༻ҙ͞Ε͍ͯΔ ɾ/PEFKT (10.x/12.x) ɾ(P (1.x) ɾ1ZUIPO (2.7/3.6ʙ3.8) ɾ3VCZ
(2.5/2.7) ɾ+BWB (8/11) ɾ/&5 Core (2.1/3.1)
!14 ϥϯλΠϜԿΛ͢Δʁ ɾϋϯυϥʔ͕ಈ࡞͢ΔڥΛఏڙ͢Δ ɾछྨͷλεΫΛߦ͏ ɹɾॳظԽλεΫ ɹɹɾϥϯλΠϜىಈ࣌ʹճ͚ͩߦ͏ॲཧ ɹɾॲཧλεΫ ɹɹɾΠϕϯτ୯ҐͰߦ͏ॲཧ
!15 ϥϯλΠϜ ಉ͜͡ͱΛ͢Ε ಠࣗͷϥϯλΠϜΛ͑Δʂ
!16 Custom Runtime
!17 ΞδΣϯμ ɾ"84-BNCEB'VODUJPOͱ ɾΧελϜϥϯλΠϜͱ ɾ3VTUͱ ɾ-BNCEB3VTU ɾ·ͱΊ
!18 ΧελϜϥϯλΠϜͱ ɾಠࣗϥϯλΠϜͰ-BNCEBΛ࣮ߦ͢ΔΈ ɾϓϩάϥϛϯάݴޠͷ੍͔Βղ์ ɾ"84ύʔτφʔ͔Βఏڙ͞ΕͯΔ ɹɾ$ ɺ3VTU BXTMBCT ɹɾ&MJYJSɺ$PCPMɺ1)1ɺFUD
ύʔτφʔ
!19 ΧελϜϥϯλΠϜͷΈ ɾଞϥϯλΠϜͱಉͷ͜ͱΛ͢Δ ɹɾॳظԽλεΫ ɹɾॲཧλεΫ ɾϥϯλΠϜ"1*Ͱ࣮ݱ͢Δ
!20 ΧελϜϥϯλΠϜͷಈ࡞Πϝʔδ
!21 ΧελϜϥϯλΠϜͷಈ࡞Πϝʔδ ޭͨ͠߹ ˠϨεϙϯε௨ ࣦഊͨ͠߹ ˠΤϥʔ௨
!22 ΧελϜϥϯλΠϜͷಈ࡞Πϝʔδ ϥϯλΠϜ"1*Ͱ࣮ݱ ɾॳظԽΤϥʔ ɾ࣍ͷݺͼग़͠ ɾݺͼग़͠Ϩεϙϯε ɾݺͼग़͠Τϥʔ
!23 ϥϯλΠϜॳظԽλεΫ ɾઃఆऔಘ ɹɾϋϯυϥʔ໊ϥϯλΠϜ"1*ͷϗετͳͲ ɾؔͷॳظԽ ɹɾϋϯυϥʔͷಡΈࠐΈɺϦιʔεͷॳظԽͳͲ ɾΤϥʔ௨ ɹɾॳظԽʹࣦഊͨ͠߹ͷΤϥʔ༰Λ௨
!24 ॲཧλεΫ ɾΠϕϯτऔಘɾίϯςΩετ࡞ ɾϋϯυϥʔݺͼग़͠ ɾॲཧ݁Ռ௨ ޭɾΤϥʔ ɾτϨʔεϔομͷ ҙ
ɾΫϦʔϯΞοϓ ҙ
!25 ΧελϜϥϯλΠϜͷ࡞Γํ ɾϥϯλΠϜͱϋϯυϥʔΛύοέʔδʹಉࠝ ɾCPPUTUSBQͱ͍͏໊લͷ࣮ߦՄೳϑΝΠϧ ɹɾγΣϧεΫϦϓτ ɹɾ"NB[PO-JOVYͰಈ࡞͢ΔεΫϦϓτ ɹɾ"NB[PO-JOVY͚ͷ࣮ߦՄೳόΠφϦ
!26 ͳͥΧελϜϥϯλΠϜʁ ɾ͍͍ͨݴޠͰ-BNCEBΛಈ͔ͤΔ ɹɾੈքͷ-BNCEB͔Β ·ͱΊهࣄ ɾطଘͷࢿ࢈Λ༗ޮ׆༻͍ͨ͠ ɾಛఆͷϥΠϒϥϦΛར༻͍ͨ͠
!27 ͳͥΧελϜϥϯλΠϜʁ ɾ͍͍ͨݴޠͰ-BNCEBΛಈ͔ͤΔ ɹɾੈքͷ-BNCEB͔Β ·ͱΊهࣄ ɾطଘͷࢿ࢈Λ༗ޮ׆༻͍ͨ͠ ɾಛఆͷϥΠϒϥϦΛར༻͍ͨ͠
!28 ͳͥΧελϜϥϯλΠϜʁ ͖ͳݴޠΛ͍͍ͨʂ
!29 Rust
!30 ΞδΣϯμ ɾ"84-BNCEB'VODUJPOͱ ɾΧελϜϥϯλΠϜͱ ɾ3VTUͱ ɾ-BNCEB3VTU ɾ·ͱΊ
!31 Rustͱ ɾΦʔϓϯιʔεͷγεςϜϓϩάϥϛϯάݴޠ ɾ৽͠ΊͷݴޠͰɺʹϦϦʔε ɹɾ࠷৽൛ ݄࣌ ɾߴ͔ͭϝϞϦ҆શ ɾ෯͍Ͱ͑Δ
!32 Rustͱ ެࣜαΠτΑΓ ࣌ IUUQTXXXSVTUMBOHPSHKB
!33 Rustͷಛ ެࣜαΠτΑΓ ࣌ IUUQTXXXSVTUMBOHPSHKB
!34 Rustͷ༻్ ެࣜαΠτΑΓ ࣌ IUUQTXXXSVTUMBOHPSHKB
!35 Lambda͍͚Δʂ ΧελϜϥϯλΠϜͳΒ RustͰLambda FunctionΛ࣮Ͱ͖Δʂ
!36 AWSϒϩάΑΓ https://aws.amazon.com/blogs/opensource/rust-runtime- for-aws-lambda/
!37 ΞδΣϯμ ɾ"84-BNCEB'VODUJPOͱ ɾΧελϜϥϯλΠϜͱ ɾ3VTUͱ ɾ-BNCEB3VTU ɾ·ͱΊ
!38 RustͰॻ͘ϝϦοτ (ݸਓͷײͰ͢) ɾ҆શͳϓϩάϥϜΛॻ͖͍͢ ɹɾڧྗͳܕγεςϜ ɹɾϦιʔεཧͷΈ ɾखܰʹඇಉظॲཧΛॻ͚Δ BTZODBXBJU ɾॻָ͍͍ͯͯ͠
!39 Ͳ͏Δͷʁ ɾ"84ఏڙͷΧελϜϥϯλΠϜΛ͏ ɾBXTMBCTBXTMBNCEBSVTUSVOUJNF ɾ3VTUͰόΠφϦΫϨʔτΛ࣮͢Δ ɾ"NB[PO-JOVY͚ʹϏϧυ͢Δ
!40 Lambda & Rust ·ͣ)FMMP8PSME͔Βʂ
!41 αϯϓϧίʔυ (JU)VCͰެ։ͯ͠·͢ IUUQTHJUIVCDPNZPTIJIJUPISVTUMBNCEBFYBNQMF
!42 Lambda & RustͰHello World ϓϩδΣΫτΛ࡞Δ DBSHPOFX"11@/".&
!43 Lambda & RustͰHello World ґଘΫϨʔτ ϥΠϒϥϦ ΛՃ͢Δ $BSHPUPNM
!44 Lambda & RustͰHello World ґଘΫϨʔτ ϥΠϒϥϦ ΛՃ͢Δ $BSHPUPNM LambdaͷϥϯλΠϜػೳ
!45 Lambda & RustͰHello World ґଘΫϨʔτ ϥΠϒϥϦ ΛՃ͢Δ $BSHPUPNM γϦΞϥΠζ
!46 Lambda & RustͰHello World ґଘΫϨʔτ ϥΠϒϥϦ ΛՃ͢Δ $BSHPUPNM (ඇެࣜ)
AWS SDK
!47 Lambda & RustͰHello World ґଘΫϨʔτ ϥΠϒϥϦ ΛՃ͢Δ $BSHPUPNM ඇಉظϥϯλΠϜ
!48 Lambda & RustͰHello World ϓϩάϥϜΛॻ͘ TSDNBJOST
!49 ΠϕϯτͱϨεϙϯεͷߏମΛఆٛ͢Δ JSON→Πϕϯτ ʹσγϦΞϥΠζ ϨεϙϯεˠJSON ʹγϦΞϥΠζ
!50 Ϗϧυ͔ΒσϓϩΠ·ͰͷྲྀΕ ɾY@MJOVY͚ʹίϯύΠϧ ɾ࣮ߦՄೳόΠφϦͷϑΝΠϧ໊ΛCPPUTUSBQʹ ɾCPPUTUSBQΛ;*1ϑΝΠϧʹΞʔΧΠϒ͢Δ ɾΞοϓϩʔυ͢Δ
!51 Ϗϧυ͔ΒσϓϩΠ·ͰͷྲྀΕ ɾΞοϓϩʔυ͢Δ %PDLFSϏϧυ༻Πϝʔδ͋Γ TPGUQSPQTMBNCEBSVTU ɾY@MJOVY͚ʹίϯύΠϧ ɾ࣮ߦՄೳόΠφϦͷϑΝΠϧ໊ΛCPPUTUSBQʹ ɾCPPUTUSBQΛ;*1ϑΝΠϧʹΞʔΧΠϒ͢Δ
!52 ϏϧυˍΞʔΧΠϒ %PDLFSͰϏϧυ͢Δ
!53 ϏϧυˍΞʔΧΠϒ UBSHFUMBNCEBSFMFBTFʹϏϧυ݁Ռग़ྗ Ϗϧυ݁Ռͷ ;*1ϑΝΠϧ
!54 σϓϩΠ ɾΞοϓϩʔυҎ߱ଞͷϥϯλΠϜͱಉ͡ ɾϑϨʔϜϫʔΫΛ͏ ɹɾ4". ɹɾ$%, ɹɾ4FSWFSMFTT'SBNFXPSL ɾίϯιʔϧ͔Β࡞Δ
!55 σϓϩΠ ɾ'VODUJPOϦιʔεΛ࡞͢Δ ɾϥϯλΠϜQSPWJEFEʹ͢Δ ɹɾίϯιʔϧͰ࡞Δ߹$VTUPN3VOUJNF ɹɾ6TFEFGBVMU 1SPWJEFʜͲͪΒͰྑ͠ ɾ"84αʔϏεར༻࣌ݖݶ༩Εͣʹ
!56 σϓϩΠ
!57 ςετ࣮ߦͯ͠ΈΔ
!58 ςετ࣮ߦͯ͠ΈΔ
!59
!60 Real World Lambda ɾ-BNCEB͚ͩͰ݁͢Δέʔεগͳ͍ ɾ"84ͷαʔϏε֎෦"1*ͱ࿈ܞ͍ͨ͠ ɾෳͷ-BNCEB'VODUJPOΛ࡞Γ͍ͨ ɾFUDʜ
!61 Real World Lambda ɾ-BNCEB͚ͩͰ݁͢Δέʔεগͳ͍ ɾ"84ͷαʔϏε֎෦"1*ͱ࿈ܞ͍ͨ͠ ɾෳͷ-BNCEB'VODUJPOΛ࡞Γ͍ͨ ɾFUDʜ
!62 Lambda͚ͩͰ݁͢Δέʔεগͳ͍ ΦϒδΣΫτͷ σʔλΛಡΉ %#ΞΫηε ֎෦"1*
!63 Real World Lambda ɾ-BNCEB͚ͩͰ݁͢Δέʔεগͳ͍ ɾ"84ͷαʔϏε֎෦"1*ͱ࿈ܞ͍ͨ͠ ɾෳͷ-BNCEB'VODUJPOΛ࡞Γ͍ͨ ɾFUDʜ
!64 AWSͷαʔϏε֎෦APIͱ࿈ܞ͍ͨ͠ ɾϥΠϒϥϦ͑΄ͱΜͲͷ͜ͱ͕࣮ݱͰ͖Δ ɹɾSVTUVOPGGJDJBMBXFTPNFSVTU ɾ ඇެ͚ࣜͩͲ "844%,ͷ3VTPUP ɹɾSVTPUPSVTPUP ɾ)551ΫϥΠΞϯτͷSFRXFTUͳͲ ɹɾTFBONPOTUBSSFRXFTU
!65 3VTPUPͰ4ʹΞΫηε͢Δ߹
!66 S3ͷσʔλΛಡΈࠐΉ߹ ΠϕϯτͰॲཧରͷΦϒδΣΫτΛࢦఆ
!67 S3ͷσʔλΛಡΈࠐΉ߹ 4ΫϥΠΞϯτΛ४උ ߏମΛڬΉͱมߋ͘͢͠ͳΔ
!68 S3ͷσʔλΛಡΈࠐΉ߹ ΦϒδΣΫτऔಘॲཧ ඇಉظ
!69 S3ͷσʔλΛಡΈࠐΉ߹ ΦϒδΣΫτऔಘॲཧ ඇಉظ
!70 S3ͷσʔλΛಡΈࠐΉ߹ σʔλಡΈࠐΈॲཧ ඇಉظ
!71 S3ͷσʔλΛಡΈࠐΉ߹ Ұ࿈ͷॲཧΛͭͳ͗͜Ή ඇಉظ
!72 S3ͷσʔλΛಡΈࠐΉ߹ ϋϯυϥʔ͔ΒҰ࿈ͷॲཧΛ࣮ߦ͢Δ
!73 S3ͷσʔλΛಡΈࠐΉ߹ ςετ࣮ߦ͢Δ
!74 S3ͷσʔλΛಡΈࠐΉ߹ 4ʹΞΫηεͰ͖ͨ
!75 S3ͷσʔλΛಡΈࠐΉ߹ 4ʹΞΫηεͰ͖ͨʜ͚Ͳ͗͢ͳ͍ʁ
!76 ύϑΥʔϚϯεΛ֬ೝ͢Δ ͍ͣΕNT͑
!77 S3ͷσʔλΛಡΈࠐΉ߹ Πϕϯτॲཧͷͨͼʹੜ͍ͯ͠ΔͨΊ
!78 ύϑΥʔϚϯεΛվળ͢Δ ࣄલʹ༻ҙͨ͠ͷΛར༻
!79 ύϑΥʔϚϯεΛվળ͢Δ ϥϯλΠϜॳظԽ࣌ʹඞཁͳͷΛ࡞Δ
!80 ύϑΥʔϚϯεΛվળ͢Δ ॳճɾճҎ߱ͱʹվળ
!81 Real World Lambda ɾ-BNCEB͚ͩͰ݁͢Δέʔεগͳ͍ ɾ"84ͷαʔϏε֎෦"1*ͱ࿈ܞ͍ͨ͠ ɾෳͷ-BNCEB'VODUJPOΛ࡞Γ͍ͨ ɾFUDʜ
!82 ෳͷLambda FunctionΛ࡞Γ͍ͨ ɾૢ࡞ݖݶΛ͍ͨ͠ ɾϩάΛ͍ͨ͠ ɾϝϞϦׂΓͯΛݸผௐ͍ͨ͠
!83 ෳͷLambda FunctionΛ࡞Γ͍ͨ ɾϥΠϒϥϦ ෳόΠφϦߏʹ͢Δ ɹɾϥΠϒϥϦΫϨʔτʹڞ௨ॲཧΛॻ͘ ɹɾϋϯυϥ୯ҐͰόΠφϦΛ࡞Δ ɾଞʹΓํ͋Γͦ͏ ɹɾγΣϧεΫϦϓτͰαϒίϚϯυݺͼ͚
!84 ෳͷLambda FunctionΛ࡞Γ͍ͨ ɾଞʹΓํ͋Γͦ͏ ɹɾγΣϧεΫϦϓτͰαϒίϚϯυݺͼ͚ ɾϥΠϒϥϦ ෳόΠφϦߏʹ͢Δ ɹɾϥΠϒϥϦΫϨʔτʹڞ௨ॲཧΛॻ͘ ɹɾϋϯυϥ୯ҐͰόΠφϦΛ࡞Δ
!85 ϥΠϒϥϦ + ෳόΠφϦߏʹ͢Δ ɾϥΠϒϥϦΫϨʔτʹ͢Δ ɹɾTSDMJCSTΛՃ ɹɾϞδϡʔϧͷެ։ઃఆͳͲ ɾ4ͷૢ࡞ΛϞδϡʔϧԽ͢Δ ɹɾTSDTSTΛՃ ɹɾ4ͷૢ࡞Λू
!86 ϥΠϒϥϦ + ෳόΠφϦߏʹ͢Δ TSDNBJOST͔ΒϥΠϒϥϦؔΛར༻͢Δ
!87 ϥΠϒϥϦ + ෳόΠφϦߏʹ͢Δ ɾطଘͷϋϯυϥʔΛผͷϑΥϧμʹҠಈ ɹɾTSDNBJOST͔Β ɹɾTSDCJOIBOEMFTPCKFDUSTʹҠಈ ɾ৽نϋϯυϥʔΛಉϑΥϧμʹՃ͢Δ ɹɾTSDCJOEFMFUFTPCKFDUST
!88 ϥΠϒϥϦ + ෳόΠφϦߏʹ͢Δ $BSHPUPNMʹ<<CJO>>ઃఆΛՃ
!89 ϥΠϒϥϦ + ෳόΠφϦߏʹ͢Δ มߋޙͷϑΥϧμߏ
!90 ϥΠϒϥϦ + ෳόΠφϦߏʹ͢Δ όΠφϦ͝ͱʹ ;*1ϑΝΠϧ࡞
!91 ଞʹߟ͑Δ͖͜ͱ͕ͨ͘͞Μʂ
!92 ଞʹߟ͑Δ͖͜ͱ ɾ"1*ͷϦτϥΠ੍ޚ ɾϩάه ɾόϦσʔγϣϯ ɾ93BZ ɾFUDʜ
!93 ͲΜͲΜࢼͯ͠ݟΛ૿ͦ͏
!94 ΞδΣϯμ ɾ"84-BNCEB'VODUJPOͱ ɾΧελϜϥϯλΠϜͱ ɾ3VTUͱ ɾ-BNCEB3VTU ɾ·ͱΊ
!95 ·ͱΊ ɾ-BNCEBͷϥϯλΠϜͱͦͷछྨ ɾ3VTUͷಛ ɾ3VTUͰ-BNCEBΛ࣮͢Δํ๏
!96 LambdaͷϥϯλΠϜͱͦͷछྨ ɾϥϯλΠϜͱϋϯυϥʔ ɾඪ४ఏڙ͞Ε͍ͯΔ֤ݴޠϥϯλΠϜ ɹɾଟ͘ͷݴޠϥϯλΠϜ͕ఏڙ͞ΕͯΔ ɾΧελϜϥϯλΠϜ ɹɾݱঢ়ະαϙʔτͷݴޠରԠՄೳʹʂ
!97 Rustͷಛ ɾ҆શͳϓϩάϥϜΛॻ͖͍͢ ɾॻָ͍͍ͯͯ͠ʂ ɹɾ4UBDL0WFSGMPX4VSWFZͰ ɹɹ࿈ଓ.PTU-PWFE-BOHVBHF
!98 RustͰLambdaΛ࣮͢Δํ๏ ɾΧελϜϥϯλΠϜͷ࡞Γํ ɾ"84αʔϏε֎෦"1*ͱͷ࿈ܞ ɹɾύϑΥʔϚϯεʹ͍ͭͯͷཹҙࣄ߲͋Γ ɾෳϋϯυϥʔͷ࡞Γํ
!99 3VTUͰ-BNCEBΛॻ͍ͯΈ͍ͨʂ ͱࢥͬͯΒ͑Δͱخ͍͠Ͱ͢☺
!100 ͝ࢹௌ͋Γ͕ͱ͏͍͟͝·ͨ͠
None