型クラスとは
型クラスとは、主にHaskellなどの関数型言語で導入されている機能で、特定の振る舞いを持つ型をまとめるための仕組みです。
型クラスとは、主にHaskellなどの関数型言語で導入されている機能で、特定の振る舞いを持つ型をまとめるための仕組みです。
OCamlのモジュールシステムとCommon LispのCLOSは、どちらもプログラムを構造化し、再利用性を高めるための強力な仕組みです。しかし、そのアプローチは大きく異なります。今回は、図形を描画するという同じ具体例を使って、それぞれの違いを見ていこうと思います。
型コンストラクタとは、ざっくり言うと「新しい型を作るための型」です。
普段使っているi32
やString
などは、それ自体が完成された一つの型です。
一方、型コンストラクタは、型を引数として受け取り、新しい型を生成するものです。
Rustのトレイトは、型が持つべき振る舞い(メソッド)を定義する機能です。これは、他の言語におけるインターフェースや型クラスに非常に似ています。