1月4日の学び

最近はGithubに直接Haskell関連は記載するようになった。

結合法則

  • 集合Sに二項演算○が定義されているとき、(a ○ b) ○ c = a ○ (b ○ c ) がSの任意の元a, b, cに対して成り立てばこの演算は結合的(結合法則を満たす)であるという。
  • 加算や乗算は結合的。

左結合・右結合

  • 演算子にはまず優先度があり優先度が高い演算から実施される
  • 優先度が等しい演算子が複数ある場合は、右結合・左結合に従って演算が実施される

左結合の例

同じ優先度の演算子に対して左から計算する演算子を左結合と呼ぶ

  • 減算
  • 加算
1 - 2 - 3 = (1 - 2) - 3
1 + 2 + 3 = (1 + 2) + 3

右結合の例

同じ優先度の演算子に対して右から計算する演算子を右結合と呼ぶ

a = b = c ⇒ a = (b = c)