1
ハスケルの抽象データ型の例と、それを具体的に代数データ型と区別するものは何ですか?ハスケルの抽象データ型とは何ですか?それらは代数データ型とどう違うのですか?
ハスケルの抽象データ型の例と、それを具体的に代数データ型と区別するものは何ですか?ハスケルの抽象データ型とは何ですか?それらは代数データ型とどう違うのですか?
要約データ型は、その実装をエクスポートするのではなく、それらを構築および使用するために使用できる関数をエクスポートする方が好きです。 containers
パッケージには、多くの素晴らしい例があります。 Map
タイプは、すぐに非常に豊富なAPIを持つタイプとして心に浮かびますが、実装の詳細を見ることはできません。 Set
、Seq
、および特化IntMap
およびIntSet
タイプもすべて抽象です。
すべてのHaskell型は代数式です。これは、すべてが合計、積、関数型、および再帰から構成されていることを意味します。
さらに詳しいデータ型の例がありますか? – McLeodx
'Int'や' Char'のようなプリミティブ型は本当に代数的なものですか? – dfeuer
@dfeuer確かに、彼らはちょうど(大きいですが)有限の和です。 –