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
260
Programming Language Spry
takano32
1
620
Other Decks in Programming
See All in Programming
技術同人誌をMCP Serverにしてみた
74th
1
630
0626 Findy Product Manager LT Night_高田スライド_speaker deck用
mana_takada
0
160
GraphRAGの仕組みまるわかり
tosuri13
8
530
Kotlin エンジニアへ送る:Swift 案件に参加させられる日に備えて~似てるけど色々違う Swift の仕様 / from Kotlin to Swift
lovee
1
260
なぜ適用するか、移行して理解するClean Architecture 〜構造を超えて設計を継承する〜 / Why Apply, Migrate and Understand Clean Architecture - Inherit Design Beyond Structure
seike460
PRO
3
750
第9回 情シス転職ミートアップ 株式会社IVRy(アイブリー)の紹介
ivry_presentationmaterials
1
290
テストから始めるAgentic Coding 〜Claude Codeと共に行うTDD〜 / Agentic Coding starts with testing
rkaga
12
3.2k
#kanrk08 / 公開版 PicoRubyとマイコンでの自作トレーニング計測装置を用いたワークアウトの理想と現実
bash0c7
1
710
新メンバーも今日から大活躍!SREが支えるスケールし続ける組織のオンボーディング
honmarkhunt
4
6.5k
20250704_教育事業におけるアジャイルなデータ基盤構築
hanon52_
5
740
生成AI時代のコンポーネントライブラリの作り方
touyou
1
170
地方に住むエンジニアの残酷な現実とキャリア論
ichimichi
5
1.5k
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
223
9.7k
Building a Modern Day E-commerce SEO Strategy
aleyda
42
7.4k
How to train your dragon (web standard)
notwaldorf
94
6.1k
Code Review Best Practice
trishagee
69
18k
A better future with KSS
kneath
239
17k
Making the Leap to Tech Lead
cromwellryan
134
9.4k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Raft: Consensus for Rubyists
vanstee
140
7k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.7k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
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
ͳͲ αϙʔτঢ়گ͕ෆ໌Ͱɺ͍͟ͱͳΕʮજΔʯٕज़Λ֤ʑ ͕ൃشͯ͠ղܾ͍ͯ͘͠ຊདྷͷΤϯδχΞϦϯά͕Ͱ͖·͢