ねむい

睡魔と戦うのに忙しいので労働は別な人に任せたい

2023-05-01 今日のExercism

exercism.org

↑ 今回から自分の回答を掲載していく。

exercism.org

言い訳をすると、最初に思い付いたロジックはベスト回答と同じだった。 ただ、どうやって無名関数の中でバイナリのパターンマッチをさせるかが分からなくて今の形になった。

Strings in Elixir are UTF-8 encoded binaries. hexdocs.pm

しかし、Elixirにおける文字列は UTF-8のバイナリであり、つまりバイナリは文字列である。 よってベスト回答の実装にあるように、String.starts_with?/2 でバッチリ判定できるというわけ。 パターンマッチに拘ったのが失敗だった。

ロジックは思い付いても、今回のように言語仕様の知識不足で時間が掛かるのは口惜しい。 何回でもやり直しができる形式のサイトだから良いけど、回数に応じてスコアが下がっていくようなサイトだと今の知識では全然だ。