Slide 6
Slide 6 text
ฒྻϓϩάϥϛϯάݴޠElixir(ΤϦΫαʔ)
• 2012ʹJosé Valim(δϣθɾϰΝϦϜ)ʹΑͬͯ։ൃ͞Εͨϓϩάϥϛϯάݴޠ
• ࠓ202210पʂ
• JoséɼҎલRuby on RailsͷίϛολʔͰͨ͠
• Joséͷҙࣝͱͯ͠ɼRubyͷ͔ΘΓʹɼͬͱߴʹಈ࡞͢Δϓϩάϥϛϯάݴ
ޠ͕ඞཁͰ͋Δͱߟ͍͑ͯ·ͨ͠
• ͍Ζ͍Ζ୳ڀͯ͠Erlang(Ξʔϥϯ)ͱ͍͏ؔܕݴޠʹग़⁊͍·͢
• ErlangނJoe Armstrong(δϣʔɾΞʔϜετϩϯά)Λத৺ʹΤϦΫιϯͰ1986
͔Β։ൃ͕ਐΊΒΕ͍ͯ·ͨ͠
• ErlangΤϦΫιϯͷࣄۀͷ1ͭͰ͋ͬͨిަػ͚ʹઃܭ͞Ε͓ͯΓɼి
ަػ༻్ʹ͑ΒΕΔΑ͏ɼݎ࿚͔ͭฒߦॲཧΛٻ͍ͯ͠·ͨ͠
• ిަػ༝དྷͱɼTRON OSͷ1ͭͷCTRONͱ͍ۙϞνϕʔγϣϯͰ͢Ͷ
• ͨͩ͠ɼErlangͷจ๏ͱ͖ͬͭʹ͍͘ͷ͕ܽͰͨ͠
• ͦ͜ͰɼJoséRubyͱಉҎ্ͷϓϩάϥϜίʔυͷॻ͖͢͞Λٻ͠ɼErlangΛ
ϕʔεͱͯ͠ฒߦॲཧج൫Λඋͨ͠৽͍͠ϓϩάϥϛϯάݴޠ Elixir Λ։ൃ͠·͢
• Elixir ࿉ۚज़ࢣ͕͍ٻΊͨෆෆࢮͷྶༀͷ໊લͰ͢
• José͍Θ໋໊͘ཧ༝ɼErlangͱಉ͡EͰ࢝·Δ͔͍͍ͬ͜୯ޠͱ͍͏Ҏ্ͷ͜
ͱ͍֮͑ͯͳ͍ͦ͏Ͱ͢
• Ұ࣌ظݴΘΕ͍ͯͨɼJosé͕ϑΝΠφϧϑΝϯλδʔʹڵ໋໊͍ͯͯͨ͡͠ͱ͍
͏આɼJoséࣗʹΑͬͯ൱ఆ͞Ε·ͨ͠
• ElixirύΠϓϥΠϯԋࢉࢠ|>͕ಛతͰɼ͜ΕΛͬͯॻ͍ͨϓϩάϥϜίʔυɼ
ࠨ͔Βӈɼ͋Δ্͍͔ΒԼɼσʔλΛม͍༷ͯ͘͠ΛྲྀΕΔΑ͏ʹಡΈԼ͢
͜ͱ͕Ͱ͖·͢
1..1_000_000 # 1͔Β1,000,000·ͰͷϦετΛ
|> Enum.map(& &1 * 2) # ֤ཁૉ2ഒͯ͠
|> Enum.map(& &1 + 1) # ͞Βʹ֤ཁૉʹ1ͨ͠ϦετΛฦ͢
• Elixirɼ͜ͷΑ͏ͳίʔυΛ؆୯ʹฒྻԽ͢Δ͜ͱ͕Ͱ͖·͢
6
© 2022 Susumu Yamazaki
© Elixir Team