こんにちは、@koga1020です。

【exercism.io】Elixir Trackメモ その2に引き続き、exercismを進めていきます。

ネタバレ

  • 以下、自分が解いた問題とその振り返りを書いています
  • 一切の参考情報を得ずにexercismを取り組みたい!!」という方は解き終わってから読んでいただければと思います

Space Age

各惑星にて「地球の公転周期で換算したら何歳?」を計算する問題

自分の回答: https://exercism.io/tracks/elixir/exercises/space-age/solutions/5acc2496893945ffb27f66abc730c0a2

振り返り

Two Fer

引数で渡した文字列を決まった文字列に埋め込む問題。guradを学ぶための問題っぽい。

自分の回答: https://exercism.io/tracks/elixir/exercises/two-fer/solutions/5221a146bce44ef586de22c4754afcda

振り返り

Accumulate

いわゆるEnum.mapを再実装する問題。

Keep your hands off that collect/map/fmap/whatchamacallit functionality provided by your standard library! Solve this one yourself using other basic tools instead.

という制約がある。

自分の回答: https://exercism.io/my/solutions/e3be9569a4ce4a4c878b3f2285ac7849

振り返り

  • 内包表記で書いてみた
  • 制約がなければEnum.mapで書いて終わり

Acronym

“Portable Network Graphics” → PDFのように頭文字を並べた文字を作成するプログラムを書く。

ちなみに頭文字を並べたものが1つの単語として発音可能なものを「Acronym(アクロニム)」というらしい。

自分の回答: https://exercism.io/tracks/elixir/exercises/acronym/solutions/3191073a11474e51bb6fb71837927ead

振り返り

まとめ

問題によっては正規表現を使いこなせるとかなりスッキリした回答が作れますね。また、再実装する系の問題も頭の体操になるので楽しいです。