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
型、ついてますか? - 型の本質を振り返る -
Search
TAKANO Mitsuhiro
July 08, 2016
Programming
10
4.1k
型、ついてますか? - 型の本質を振り返る -
なぜ、動的型付けスクリプト言語の流行りから、再び静的型付けの言語が注目されているのか。
型付けの歴史を振り返り、これからの「型」のありかた、それを実装した処理系のありかたについて考えます。
TAKANO Mitsuhiro
July 08, 2016
Tweet
Share
More Decks by TAKANO Mitsuhiro
See All by TAKANO Mitsuhiro
Pharo 6 最新情報 | 第101回Smalltalk勉強会
takano32
0
270
Programming Language Spry
takano32
1
620
Other Decks in Programming
See All in Programming
MCP連携で加速するAI駆動開発/mcp integration accelerates ai-driven-development
bpstudy
0
310
サイトを作ったらNFCタグキーホルダーを爆速で作れ!
yuukis
0
390
バイブコーディング × 設計思考
nogu66
0
120
なぜ今、Terraformの本を書いたのか? - 著者陣に聞く!『Terraformではじめる実践IaC』登壇資料
fufuhu
4
630
CEDEC 2025 『ゲームにおけるリアルタイム通信への QUIC導入事例の紹介』
segadevtech
3
920
Bedrock AgentCore ObservabilityによるAIエージェントの運用
licux
9
710
Understanding Ruby Grammar Through Conflicts
yui_knk
1
120
The state patternの実践 個人開発で培ったpractice集
miyanokomiya
0
130
State of CSS 2025
benjaminkott
1
110
TROCCO×dbtで実現する人にもAIにもやさしいデータ基盤
nealle
0
280
GitHub Copilotの全体像と活用のヒント AI駆動開発の最初の一歩
74th
8
3k
Go製CLIツールをnpmで配布するには
syumai
2
1.2k
Featured
See All Featured
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
Documentation Writing (for coders)
carmenintech
73
5k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
770
Stop Working from a Prison Cell
hatefulcrawdad
271
21k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
890
The Cost Of JavaScript in 2023
addyosmani
53
8.8k
Building a Modern Day E-commerce SEO Strategy
aleyda
43
7.4k
The Pragmatic Product Professional
lauravandoore
36
6.8k
Optimizing for Happiness
mojombo
379
70k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.6k
Writing Fast Ruby
sferik
628
62k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Transcript
ܕɺ͍ͭͯ·͔͢ʁ - ܕͷຊ࣭ΛৼΓฦΔ - ϋογϡλά #AIAL ԙ ຊϚΠΫϩιϑτ 2016-07-08 TAKANO
Mitsuhiro a.k.a. @takano32 SORABITO Inc. / jus / CONBU
ձʹײँ ͍͖ͭ͞ നϠΪίʔϙϨʔγϣϯͷຊ͞Μ͔Βߨࢣͷଧ ࣾ + ͪΐͬͱ֎෦ͳงғؾͷ 15ਓ͘Β͍ͷษڧձ Πϕϯτެ։ޙ 3࣌ؒ͘Β͍Ͱ15ਓຒ·Δ ެ։͔Β1Ͱ30ਓ͘Β͍·ͰࢀՃొ
ຊϚΠΫϩιϑτ͞Μ ͋Γ͕ͱ͏͍͟͝·͢ʂ ձ୳͠ Facebook ͰΫϩʔζυͳࠂ ຊϚΠΫϩιϑτͷࢁຊ͞Μ͔Βձఏڙʹ͍͓͕͚͍͚ͭͯͨͩ·ͨ͠ ֤ॴͱௐͭͭ͠ຊϚΠΫϩιϑτ͞ΜͷձΛ͓आΓ͢Δ͜ͱ͕Ͱ͖·ͨ͠ʂ ձܾఆͷ࣌Ͱ60ਓ͕ࢀՃొ Twitter ͳͲͷݸਓͷϝσΟΞͰࠂ
100ਓͷձʹ΄΅ࢀՃొ100ਓ ΄Μͱ͏ʹ͋Γ͕ͱ͏͍͟͝·͢ʂ
λΠτϧͷݩωλ ϥΠτɺ͍ͭͯ·͔͢ʁ ղܾͷखҾ͖ ਖ਼͘͠ଊ͍͑ͯΔ͔ͷֶ ؒҧͬͨʹແବͳྗ ଘࡏ͠ͳ͔ͬͨ
͓લɺ୭Α TAKANO Mitsuhiro a.k.a. @takano32 ߴ ޫ߂ / ͔ͨͷ ΈͭͻΖ
ຊUNIXϢʔβձ(װࣄ|ཧࣄ) SORABITOגࣜձࣾ ٕज़εϖγϟϦετ Smalltalk-ing Ruby committer Senior Infrastructure Engineer
ઐͱܦྺ
ઐ ͳΜͱͳ͘ϓϩάϥϛϯά͕ ͖ͩͬͨ͋ͷ͜Ζ
ઐ ߴߍੜͷͱ͖͔ΒϓϩάϥϛϯάΛ͡ΊΔ େֶ࣌ ωοτϫʔΫͱηΩϡϦςΟͷݚڀ म࢜จݴޠॲཧ ࣮ߦڥʹґଘ͠ͳ͍ιϑτΣΞهड़ݴޠʹؔ͢Δݚڀ δϟϰΝͷͰͳ͍
ઐ(CONT.D) ΞϧόΠτ Smalltalk VM ͷ։ൃ Linux Ոి͚ϓϥοτϑΥʔϜ Windows͚ࣾϝοηϯδϟʔ Smalltalk VM
Λ༻͍ͨ .NET VM ͷ։ൃ ܞଳి͚ϓϥοτϑΥʔϜ ҰൠతͳిࢠऔҾαΠτͷߏஙಛڐࣄۀͷ্ཱͪ͛
ܦྺ ʮܦݧͰ͖ͳ͍͜ͱʯΛܦݧ͢Δ
ܦྺ גࣜձཱࣾ࡞ॴ ৽ଔͰͳ͍ͱຊମͷજೖͰͷ࠾༻͍͠ ԾԽػߏͷઃܭ։ൃ ຊͰ͍ͬͯΔͱ͜Ζ͕ଞʹͳ͍ ࣾһ͕ϋϯύͳ͍ ίϛϡχςΟʔ׆ಈ ࣾͷͭͳ͕ΓͰࢁຊ͞Μ(@mihochannel)ͱΓ߹͏ ࣾ֎ͷ׆ಈͰຊ͞Μ(@t2y)ͱΓ߹͏
ܦྺ(CONT.D) άϦʔגࣜձࣾ େنΠϯϑϥετϥΫνϟͷࢦش ৫શମΛࢧ͑Δ௨γεςϜ ܭࢉػͷ͕ϋϯύͳ͍ SORABITOגࣜձࣾ Smalltalk ʹΑΔిࢠऔҾαΠτ ͋ͨΓͷ୯Ձ͕ϋϯύͳ͍ ॏػݐػͷϚʔέοτϓϨΠε
͓Αͦೋԯԁͷग़ͳͲଘࡏ Smalltalk ͰۀγεςϜΛ࡞Δͱ͔ܦݧͰ͖ͳ͍ʂʂʂ
ҰݴͰݴ͑ԿͰ ͦͦ͜͜ਂͬͯ͘ΔԿͰ
ؓٳɻ
ܕɺ͍ͭͯ·͔͢ʁ
ܕɺ͍ͭͯ·͔͢ʁ ܕʹ͍ͭͯͷೝࣝΛ֬ೝ ܕͷຊ࣭Λཧղ͢Δ ܕʹ͍ͭͯٞ͢Δ·͑ʹ͢Δ͖ ܕʹ͍ͭͯඞཁͷແ͍ٞগͳ͘ͳΔͣ ܕʹ·ͭΘΔྺ࢙Τϐιʔυͷհ
֓ཁ Ұൠతͳʮܕʯʹ͍ͭͯͷ֓ཁ ੩తܕ͚ ಈతܕ͚ ܕ͚ͷ෩ை (ݹ|ۙ|ݱ|ݪ࢝)(ಈత|੩త)ܕ͚
֓ཁ(CONT.D) ෩ைͷมભ ͦΕͧΕͷ෩ைʹ͓͚Δʮࢦʯ ܕɺ͍ͭͯ·͔͢ʁ ܕͷඞཁੑ ܁Γฦ͞ΕΔྺ࢙ ͜Ε͔Βͷʮܕʯͷ͋Γํ
Ұൠతͳܕʹ͍ͭͯͷ֓ཁ ಛఆͷݴޠܕͷٕज़ʹ͍ͭͯͷৄࡉׂѪ ͬͱ;͞Θ͍͠ษڧձ͕͋Γ·͢ ͋͘·Ͱ͜ͷͰશମΛΈ·͢ ΛΈͯथւʹ໎Θͳ͍Α͏ʹҙ ໘ന͍͜ͱɺҙ֎ͳͷऔΓ্͛·͢ ͓࢈ʹͬͯؼΕΔ͕͍͔ͭ͋͘Δͣ
੩తܕ͚ ʮܕ͕͍͍ͭͯΔʯͱ͍͑҉తʹ੩తܕ ͚ͷ͜ͱ ࣄલʹมͷܕΛਫ਼ࠪ͢Δ ੩తͳղੳ ίϯύΠϧ࣮ߦલͷόάൃݟ
ಈతܕ͚ ࣄલʹมͷܕΛਫ਼ࠪ͠ͳ͍ ಈతͳධՁʹΑͬͯ͡Ίͯܕ͕Θ͔Δ ࣮ߦ࣌ͷܕ͚
(੩తcಈత)ܕ͚ ੩తܕ͚Ͱࣄલͷղੳॲཧ Ұൠʹิॿͷهड़Λߦ͏ ࣮ߦݫີʹߦ͍ͬͯͳ͍ ͍͘Β੩తܕ͚ͷॲཧܥʹΑΔॲཧ͕ҰॠͰऴΘ͍ͬͯͯ ಈ࡞࣌ͷܕ͚ҟͳΔ ࣮ߦ͕Ͱ͖Δͷಈతܕ͚͚ͩ ৄࡉղઆ͠·͢
ܕ͚ͷ෩ை ݹ੩తܕ͚ ݹಈతܕ͚ ۙಈతܕ͚ ۙ੩తܕ͚ ݱಈతܕ͚ ݱ੩తܕ͚ ݪ࢝ಈతܕ͚ ݪ࢝੩తܕ͚
(ݪ࢝cݹcۙcݱ) (ಈతc੩త) ܕ͚
8छྨϠϦա͗ͱ ল͓ͯ͠Γ·͕͢ ͬͪΌͬͨͷ͠ΐ͏͕ͳ͍
ݹ੩తܕ͚ CݴޠΛදͱ͢Δͷʹ࠾༻ γεςϜͱີͳܕ͚ ܕ͕ෆ໌ͩͱσʔλͷѻ͍ํ͕͔Βͳ͍
A B A
A B A
A B A
ݹಈతܕ͚ ॲཧͷهड़ͱϑΥʔΧε͕Ҡ͍ͬͯ͘ γεςϜͷهड़Ͱͳ͍ BASIC ॳ৺ऀ͚ͷݴޠͱͯ͠ҐΛཱ֬ ཪٕͬΆ͍ςΫχοΫͰγεςϜʹΞΫηεͰ͖Δ ex. DATA, PEEK, POKE
γΣϧεΫϦϓτ γεςϜͱର͢ΔͨΊͷػߏΛԠ༻
ίϥϜ: γΣϧ ྫ֎ଘࡏ͢Δ γεςϜͱ҆શʹର͢Δͷ͕γΣϧຊདྷͷׂ ਅͷLinux Kernel ͚γΣϧ Ͳ͏ΈͯόΧ ๙Ίݴ༿
ίϥϜ: ҧײ͕͋Δݴ༿ γΣϧεΫϦϓτΛॻ͘͜ͱΛʮγΣϧΛॻ͘ʯ bash zsh Λ։ൃ͍ͯ͠Δʁʁʁ IP ΞυϨεͷ͜ͱΛʮIPʯ IP
ͱΠϯλʔωοτϓϩτίϧͷ͜ͱͰ IP ΞυϨεͱ IP Ͱͷ ૹ৴ઌૹ৴ݩͷΞυϨε ͜ͷҧײΛ͔Γ͘͢ྫ͑Δ Wikipedia ͷ͜ͱΛ ʮWikiʯ ͱදݱ͍ͯ͠ΔϞϠϞϠײ
ۙಈతܕ͚ ݹಈతܕ͚Ͱղܾ͕໘ͩͬͨͷվળ Perl sh + sed + awk + grep
ڧྗͳจࣈྻૢ࡞ ಛʹPerlޓͷਖ਼نදݱͷଘࡏେ͖͍Ռ PCREͱͯ͠ଞͷੈքʹେ͖͘Өڹ
ۙಈతܕ͚(CONT.D) PHP దʹॻ͚ಈ͘ རͰ͋Δܽ͠Ͱ͋Δ ܕͷٞͳͲͷͰᎏ᎐͞ΕΔ͜ͱଟ͍ ଟ͘ͷΛղܾ͖ͯͨ͠ͷࣄ࣮ Python Perl ॻ͘ͷΠϠʹͳͬͨΑͶ Ϋηͷ͋Δ
Perl Monger ͷՌಡΊ·ͤΜ…
ۙ੩తܕ͚ C++ݴޠʹද͞ΕΔͷʹ࠾༻ ৽͍͠ύϥμΠϜͷ্ͤ C++ݴޠͰΦϒδΣΫτࢦ ϓϩάϥϜͷߏԽͷԆઢ্ʹΦϒδΣΫτࢦͷςΠετΛࡌ ͤͨ ͋͘·ͰCݴޠ͔Βͷൃలܥͱଊ͑Δ͜ͱ͕Ͱ͖Δ ϧʔϧ͕ෳࡶ͗͢ΔͷͰɺ͍͜ͳͤΔΤϯδχΞఱ࠽ͩͱײ͡Δ
ݱಈతܕ͚ ύϥμΠϜϢʔεέʔεʹΑͬͯେ͖͘ීٴ Ruby ΦϒδΣΫτࢦΛલఏͱͨ͠ݴޠ ͋ͱ͔ΒࡌͤͨͷͰͳ͍ͷͰෆࣗવ͕͞ͳ͍ JavaScript WebϒϥβͰͷಈ࡞Λఆ͠ීٴͨ͠ݴޠ ʮJavaScriptOFFʹ͢Δʯͱ͍͏͔࣌Βͷܶతͳ෮׆
ݱ੩తܕ͚ ۙ੩తܕ͚ΑΓڧ͍ػೳ γεςϜهड़ϨΠϠʔ͔Βͷղ VM ͱ͍͏ਓྨͷӳ ϚϧνϓϥοτϑΥʔϜ ex. Java, Haskell, AltJS
ݪճؼɻ
ݪ࢝ಈతܕ͚ ߟ͑ͯΈΑ͏ɺϊΠϚϯܕίϯϐϡʔλ Ϩδελ ଈ ΞυϨε
ݪ࢝ಈతܕ͚(CONT.D) MOV EAX, [1000h] 1000h ͱ͍͏ଈΛ EAX ϨδελʹೖΕΔ MOV [ff00h],
EBX EBX ϨδελͷΛ ff00h ͷΞυϨεʹೖΕΔ χʔϞχοΫػցޠͱ૬ޓʹஔͰ͖Δ 0 ͱ 1 ͷ࿈ଓͰදݱ͞ΕͨنଇΛنʹΑͬͯධՁ͍ͯ͘͜͠ͱͰੈͷதͷେ ͷγεςϜಈ࡞͍ͯ͠Δ ͜ͷʮධՁʯ͕ͦ͜ɺ΄΅ͯ͢ͷࠜװʹ͋Δʮ࣮ߦʯ
ػցޠͷܕ͚ ੩తܕ͚ͳͷ͔ಈతܕ͚ͳͷ͔ ࣮ߦ࣌ʹଈ͔ΞυϨεΛஅ ͜ͷ͔࣌Βࣄલͷॲཧ͕ͳ͍ ͑ͯྨ͢ΔͳΒಈతܕ͚ͱ͍͑Δ ͯ͢ͷجຊ͜ͷαΠΫϧͰ͋ΔͨΊɺಈతܕ͚ ͔Βಀ͛Δ͜ͱ͕Ͱ͖ͳ͍
ίϥϜ: ػցޠͱCݴޠͷ ؾܰʹΔ͜ͱ͕Ͱ͖Δʹ͍ͭͯհ a[2] == 2[a]; ࣜͷʁ ʮਅʯ
Կ͕ى͖͍ͯΔͷ͔ʁ
a 2 a[2] a 2 2[a]
ݪ࢝੩తܕ͚ ىݯϥϜμܭࢉʹ͋Γ ܕͳ͠ϥϜμܭࢉ വͷΈͰ͞·͟·ͳॲཧΛ࣮ݱ͢ΔՄೳੑΛఏࣔ ࣗવͷѻ͍ɺ݅ذɺ࠶ؼ ܕ͋ΓϥϜμܭࢉ ܕͳ͠ϥϜμܭࢉͷൃలܥ ڧ͍ܕ͚ͱԆධՁͷૅͱͳͬͨΈ ৄࡉΛ͢ͱ 12
࣌ؒ͘Β͍ʹͳΓͦ͏ͳͷͰׂѪ
෩ைͷมભ
ݪ࢝ ݪ࢝ಈతܕ͚ ϊΠϚϯܕίϯϐϡʔλ ݪ࢝੩తܕ͚ ࢥߟతͳ࣮ݧ
ݹ ݹ੩తܕ͚ γεςϜͷهड़ͷͨΊʹภ͍ͬͯΔ Ϣʔβͷॲཧͷهड़ʹ໘ ݹಈతܕ͚ γεςϜͱͷର هड़ͷརศੑΛॏࢹ
ۙ ۙ੩తܕ͚ ݹ੩తܕ͚ʹର͢Δ৽͍͠ύϥμΠϜͷద༻ ۙಈతܕ͚ ݹಈతܕ͚ʹର͢Δ৽͍͠ύϥμΠϜͷద༻ ۙʹ͓͚Δʮ৽͍͠ύϥμΠϜʯ ΦϒδΣΫτࢦͱ͍ͬͯΑ͍
ݱ ݱಈతܕ͚ ৽͍͠ύϥμΠϜ͕ઌʹ͋Δಈతܕ͚ ݱ੩తܕ͚ ৽͍͠ύϥμΠϜ͕ઌʹ͋Δ੩తܕ͚ ݱʹ͓͚Δʮ৽͍͠ύϥμΠϜʯ ΦϒδΣΫτࢦͱ͍͑Δ
ܕɺ͍ͭͯ·͔͢ʁ
ܕͰΈΔྺ࢙ ݪ࢝ܕ͚࣌ ܕͱ͍͏ͷҙࣝ͞Εͳ͔ͬͨ ݹܕ͚࣌ ॲཧ͢Δͷੑ࣭ʹΑͬͯܕ͚͕͞Εͨ ۙܕ͚࣌ ৽͍͠ύϥμΠϜͷςΠετ͕Ճ͞Εͨ ݱܕ͚࣌ ৽͍͠ύϥμΠϜ͕ઌʹ͋Γɺͦͷޙʹॲཧܥ͕͋Δ
ྺ࢙͔ΒֶͿܕ ަޓʹಈతܕ͚ͱ੩తܕ͚͖ͯͨ͠ ͕࣌ਐΉʹͭΕͯʮཧతͳʯܭࢉػ͔Βͷ ڑԕ͘ͳ͍ͬͯΔ ߴͳநԽ
͜Ε͔ΒͷʮมԽʯΛಡΉ
ͳͥɺྺ࢙܁Γฦ͢ͷ͔ σόοάࠔͳঢ়ଶͱͳͬͨͱ͖ ੩తͳܕ͚ͱݟ͔͚ͤͯಈతͳܕ͚ͱ͍͏Έ߹Θ͕ͤअѱ CݴޠC++ݴޠͰσόοΨΛڧԽͯ͠Ԇ໋ ղܾͷυϝΠϯͱॲཧܥͷΠϯϐʔμϯεϛεϚον ex. WebγεςϜͷ৽ن։ൃʹPerlΛ࠾༻͠·͔͢ʁ நԽͷϨϕϧ ΦϒδΣΫτࢦͷ͜ͱΛߟ͍͑ͯΔͱ͖ʹϙΠϯλͱ͔ϝϞϦͱ͔ܕͷෆҰ கͰσʔλͷϚοϐϯά͕ڰ͍ͦ͏ɺΈ͍ͨͳ͜ͱʹҙΛ͍ͨ͘ͳ͍
͜Ε͔ΒͷʮܕʯΛߟ ྺ࢙͔ΒৼΓସ͑ΔϙΠϯτ υϝΠϯ ύϥμΠϜ நԽ Ϧιʔε ੩తͱಈతͷ࣠ʹΑΔߟ ཧͱ࣮ફ ۩ͱந
͜Ε͔ΒͷʮυϝΠϯʯ υϝΠϯͱղܾ͖͕͢Ͳͷʹଐ͍ͯ͠Δ͔ʁ ͱ͍͏ҙຯ ྺ࢙ͰγεςϜهड़ͱWeb͕େ͖͘Өڹ ݱࡏ HTTP ͕શ͕ͩՌͨͯ͜͠ͷ··ͳͷ͔ʁ ex. Web ΞϓϦέʔγϣϯ൪߸
80 ൪ IPv6 ͕ຊ֨తʹීٴͨ͠ͱ͖ʹԽ͚ΔՄೳੑ͕͋Δ
͜Ε͔ΒͷʮύϥμΠϜʯ ؔܕΦϒδΣΫτࢦʹද͞ΕΔʮ֓೦తͳ ࢥߟํ๏ʯ͕ύϥμΠϜ υϝΠϯʹରͯ͠༗ޮͳύϥμΠϜ͕ॲཧܥʹӨڹ ͯ͘͠Δ ex. ΞεϖΫτࢦ ex. ฒྻϓϩάϥϛϯά /
ฒߦϓϩάϥϛϯά
͜Ε͔ΒͷʮநԽʯ ΦϒδΣΫτࢦΑΓਐΜͩநԽ UML ͳͲͷ͜ͱ ex. Executable UML
͜Ε͔ΒͷʮϦιʔεʯ ܭࢉػͷύϫʔͷ͜ͱ ͜Ε͕όΧʹͳΒͳ͍ ex. ΨϕʔδίϨΫγϣϯ ߏ࣌࡞ͬͨϝϞϦΛ΄ͬͨΒ͔͢Α͏ͳ༨༟͕ϝϞϦۭؒʹͳ͔ͬͨ झຯͰ࡞ͬͨΦϞνϟѻ͍ ex. ΦϒδΣΫτࢦ ܧঝͷΈʹΑΓɺϝιουͷ୳ࡧʹ͕͔͔͍࣌ؒͬͯͨ
࣮༻తͰͳ͍ͱஅ͞Ε͍͍ͯͨ࣌ ݱͰΈࠐΈͰܟԕ͞Ε͕ͪ
͜Ε͔ΒͷʮϦιʔεʯ ͲͪΒͷཁૉٕज़ݱͰ͔ܽͤͳ͍ͷͱͳ͍ͬͯ Δ ΨϕʔδίϨΫγϣϯ ΦϒδΣΫτࢦ ५ͳܭࢉػϦιʔε͕खʹೖͬͨͱ͖ʹɺ͍·ΘΕ ͍ͯͳ͍ʮΦϞνϟʯ͕಄͢ΔՄೳੑेʹ͋Δ
͍·ݸਓతʹཉ͍͠Ϡπ ύϥμΠϜฤ
෭࡞༻Λߟྀͨ͠γΣϧ UNIXίϚϯυ ࣌എܠ͔Βޭ͔ࣦഊͷΈʹϑΥʔΧε ࣌ immutable infrastructure ෭࡞༻Λͨ͠γΣϧ͕͋Δͱศརͳ༧ײ ex. Monad +
shell ͜͜Ͱͷ෭࡞༻ͱૢ࡞͕ܭࢉػʹӨڹ͢Δ͔Λҙຯ͢Δ ෭࡞༻͕໌നʹΘ͔ΔγΣϧͰૢ࡞Ͱ͖Εɺ෭࡞༻͕ൃੜ͢ΔͷͷΈΛऔΓग़ͤΔͣ Dockerfile ͳͲ͕ࣗಈͰੜͰ͖Δؾ͕͢Δ
͜Ε͔Βͷܕͱॲཧܥʹͭ ͍ͯߟ͑ͯΈ·͠ΐ͏
ͦΕ͕ະདྷͷΤϯδχΞϥΠϑ Λ๛͔ʹ͢Δ͔͠Ε·ͤΜ
Ԇઓ ࠓ LL ΠϕϯτΛ։࠵͠·͢ LLoT - Lightweight Language of Things
http://ll.jus.or.jp/2016/ ܕͷηογϣϯͷొஃऀΛަবத http://ll.jus.or.jp/2016/program
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ SORABITOגࣜձࣾͰΤϯδχΞΛืूத શମΛ၆ᛌͰ͖ɺཧΛΓͭͭɺݱ࣮ͱಆ͍ɺεϐʔυͱ ࣭Λམͱ͞ͳ͍νʔϜ։ൃ ج൫ٕज़࠷ઌͷͷΛԲ͢Δ͜ͱͳ͘࠾༻ Pharo, PostgreSQL, Elasticsearch, Redis, Neo4j
ͳͲ αϙʔτঢ়گ͕ෆ໌Ͱɺ͍͟ͱͳΕʮજΔʯٕज़Λ֤ʑ ͕ൃشͯ͠ղܾ͍ͯ͘͠ຊདྷͷΤϯδχΞϦϯά͕Ͱ͖·͢