Upgrade to Pro — share decks privately, control downloads, hide ads and more …

純粋関数型言語 Elm のすすめ ~ Elmはとてもいい言語なのでみんな使ってみましょう! ~

soukouki
July 10, 2021
320

純粋関数型言語 Elm のすすめ ~ Elmはとてもいい言語なのでみんな使ってみましょう! ~

Zli大LTのLTスライドです。

フロントエンド開発の選択肢にElmを入れてもらうことを目標として発表しました。

soukouki

July 10, 2021
Tweet

More Decks by soukouki

Transcript

  1. 自己紹介 29期生で学部1年の sou7 / soukouki です。 twitter:@sou7___ (アンダーバーは3つ!) discord:sou7#0094 github:soukouki

    atcoder:soukouki atcoder茶色です。 大学入ってからというもの、周りにすごい人が多くて刺 激されてます。 みんなすごい!
  2. Maybe型 みなさんは Exception in thread "main" java.lang.NullPointerException AttributeError: 'NoneType' object

    has no attribute 'func' NoMethodError (undefined method `func' for nil:NilClass) これらのようなエラーを見て台パンしたことが、きっとあると思います。 ですが、なんとElmではこれらのエラーと おさらば できます!
  3. type Maybe a = Just a | Nothing Elmでは、nullポインターのようなものを使わず、型で表現します。 型で表現するので、もしnullポインターの処理を忘れても、コンパイル時に教えて

    くれます。 ScalaやRustのオプション型、Kotlinのnull許容型と同じようなものです。 https://github.com/elm/core/blob/master/src/Maybe.elm#L39
  4. type Result error value = Ok value | Err error

    Elmではこれも型で表現します。型で表現するので、エラーが発生するかもしれない関 数でエラー処理を忘れても、コンパイル時に教えてくれます。 ScalaのEither型、RustのResult型と同じ感じです。 https://github.com/elm/core/blob/master/src/Result.elm#L32