基礎からわかる Elm のサンプルコードです。
- (誤) ラムダ記号(
λ
、\
)を使って記述します。 - (正) ラムダ記号(
\
)を使って記述します。
elm 0.19 から λ
記号が使えなくなったようです。
- (誤)
(1 :: (2 :: (3 :: []))
と解釈されます - (正)
(1 :: (2 :: (3 :: [])))
と解釈されます
(誤)
showNumbersUntil =
String.join "," << List.map String.fromInt << List.range 1 max
(正)
showNumbersUntil =
String.join "," << List.map String.fromInt << List.range 1
- (誤)
<|
と|>
は優先順位かつ結合の向きが逆なので、 - (正)
<|
と|>
は優先順位が同じかつ結合の向きが逆なので、
(誤)
List.map toString [1,2,3]
(正)
List.map String.fromInt [1,2,3]
(誤)
Set.length set -- 3
(正)
Set.size set -- 3
(誤)
Array.get 0 -- Just "one"
Array.get 3 -- Nothing
(正)
Array.get 0 array -- Just "one"
Array.get 3 array -- Nothing
(誤)
decodeString (at ["person", "age" ] int ) json == Ok "42
(正)
decodeString (at ["person", "age" ] int ) json == Ok 42
(誤)
view : Html msg
view model =
...
(正)
view : Model -> Html msg
view model =
...
p156からp159にかけて、同様に型注釈が誤っている箇所が複数あります。
- (誤)詳細は《Task》(p150)を参照してください。
- (正)詳細は《Browser.applicationの制約》(p186)を参照してください。
- (誤)hhtps://github.com/elm/browser/blob/master/src/Elm/Kernel/Browser.js
- (正)https://github.com/elm/browser/blob/master/src/Elm/Kernel/Browser.js
(誤)
import Url.Parser exposing ((</>), (<?>), s, int, top, map)
(正)
import Url.Parser exposing ((</>), (<?>), Parser, int, map, oneOf, s, top)
(誤)
type Route
= Top
| Login
| Articles (Maybe String)
| ArticleSettings Int
(正)
type Route
= Top
| Login
| Articles (Maybe String)
| Article Int
| ArticleSettings Int
※上記の記述はp191〜p192に跨っています
(誤)
urlToRoute url =
Url.Parser.perse routeParser url
(正)
urlToRoute url =
Url.Parser.parse routeParser url