Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
functional_games
Search
nanaki04
October 26, 2018
Programming
27
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
functional_games
関数型言語がゲーム開発に向いているかについてのプレゼンです。
2018年10月26日の京都エリクサーミートアップで発表したプレゼンテーションのスライドになります。
nanaki04
October 26, 2018
Other Decks in Programming
See All in Programming
Herb in Rails 8.2: Your ERB views, now HTML-aware @ Rails World 2026, Austin, Texas
marcoroth
0
220
残高管理から台帳サービスへの進化
artoy
1
200
自サークルのIdPからログアウトできるようになるまで
taiseiue
1
140
AWS CDKのカスタムリソースでContinuum(旧Security Agent)を実装した話 | Implementing Continuum (formerly Security Agent) via AWS CDK Custom Resource
akihisaikeda
2
150
C#の現在地 進化の歴史と、AI時代の.NET Everywhere
neuecc
5
5.2k
気持ちぃ〜角丸 Squircle
ryu1013
0
310
dotNET_vulnclicker_intro.pdf
deka_morita
0
140
[JA] Domain Modeling with Vanilla Rails: 「操作」から再考するRailsの設計論
yasaichi
2
340
ハーネス設計入門 〜 基礎知識の整理から実務へのステップアップ 〜
kinopeee
28
32k
個人開発者よ、Honoを使え(おじさんver)
tanahiro2010
2
260
AI時代のコードレビューは人に向けるな、仕組みに向けろ
texmeijin
5
3.7k
當我們開始不讀 Code - AI Agent 時代,Code Review 與 Clean Code 還剩下什麼?
jame2408
1
240
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2.1k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.6k
Navigating Team Friction
lara
192
16k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
310
Game over? The fight for quality and originality in the time of robots
wayneb77
1
300
How to Ace a Technical Interview
jacobian
280
24k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
1
630
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.7k
The agentic SEO stack - context over prompts
schlessera
0
970
How to Talk to Developers About Accessibility
jct
2
580
Music & Morning Musume
bryan
48
7.4k
Transcript
Functional Games ήʔϜ։ൃʹؔܕݴޠΛ͑Δʁ
ࣗݾհ About me • Robert Jan ZwetslootʢϠϯʣ • גࣜձࣾςΫϩε •
ιʔγϟϧήʔϜ։ൃΤϯδχΞ • ओʹϑϩϯτΤϯυ • Unity C# / Cocos2D JS / CocosCreator Typescript / Laravel PHP • ಠֶɿElixir / F# / Rust
ͳͥؔܕʁ Why Functional? • ผํ๏Λࢼͯ͠ΈΔͷָ͍͠ • σʔλͱϩδοΫ͕͖ͬΓ͚ͯ͘Δ • ςετ͍͢͠ •
σόοά͍͢͠
ؔܕΛΠϝʔδ͢Δͱ Visualisation of FP Input |> |> Output
ΦϒδΣΫτࢦΛΠϝʔδ͢Δͱ Visualisation of OOP Input |> |> Void Side Effect
Side Effect Side Effect Side Effect Side Effect Side Effect State State State State State
Ͳ͏ͬͯؔܕʹڵຯΛ࣋ͬͨʁ How I got into FP? • ̍લɺDave ThomasࢯͷϓϨθϯςʔγϣϯΛݟͨ •
ʮΤϦΫαʔΛΠϯετʔϧ͠ɺREPLΛ։͍ͯɺேʹͳ Δ·Ͱָ͠ΜͰ͍ͨʯ • ࢲΤϦΫαʔΛΠϯετʔϧ͠ɺREPLΛ։͍ͯɺࠓ· ͰࣙΊΒΕͳ͍
Ͳ͏ͬͯؔܕʹڵຯΛ࣋ͬͨʁ How I got into FP? • ̍લήʔϜͷϦϝΠΫϓϩδΣΫτͷϓϩτλΠϓ࡞ • ಉ྅ʹʮReduxʯʹհ͞Εͨ
• σόοάɾςετ͢͠͞ʹڻ͍ͨ • ݁ہʮReduxʯͰͷήʔϜ։ൃϦεΫߴ͗ͯࣙ͢Ίͨ • ϓϩδΣΫτ͕ࣦഊͨ͠
͔ͦ͜ΒݸਓϓϩδΣΫτੜ And my personal project was born • ؔܕݴޠήʔϜ։ൃʹదͩͱূ໌͍ͨ͠ •
Ή͠ΖOOPΑΓޮతʁ • ࣮ࡍʹؔܕݴޠͰήʔϜΛ࡞Δ
ϓϩδΣΫτհ Project introduction • ઓུܥͷήʔϜ • ·ͣ௨ৗͷνΣε • RTS֦େͰ͖ΔΑ͏ʹॻ͘ •
ωοτରઓ͕Ͱ͖Δ
ϑϩϯτΤϯυ Client application • F# |> .dll |> UnityήʔϜΤϯδϯ •
BlenderͰۨͷ3DϞσϧ࡞ ࡞ํ๏ ײ • ηοτΞοϓࠈͰͨ͠ • ҰͭͷΞϓϦέʔγϣϯεςʔτͷ߹ύʔϑΥʔϚϯε͕͔ͬͨ • F#ͷγϯλοΫε͕៉ྷʂ
όοΫΤϯυ Server application • Elixir OTP • TCP / UDP௨৴
• σʔλGenServerʹอ࣋͢Δʢσʔλϕʔεͳ͠ʣ ࡞ํ๏ ײ • ͲΜͳσʔλྔΛͬͯϝνϟΫνϟૣ͍ʂ • ͨͩͷαʔόʔϗεςΟϯάશ෦HTTPઐ༻ T_T
σόοάπʔϧ Debug Tool • Redux Development ToolsͷΑ͏ͳπʔϧʢͷͭΓʣ • RustͰ࡞ •
TCP௨৴ͰϑϩϯτΞϓϦ͕ܨ͙ ࡞ํ๏ ײ • ׳ΕͮΒ͍ݴޠ͕ͩɺඇৗʹ҆શ • ઌʹF#ΛֶΜͰྑ͔ͬͨʂ • σόοάπʔϧ͕͠Β͘ಈ͘ͱcpu༻300%ʂ
Demo Time