Czytam artykuł o zależny wpisany programowania i natknąłem się na następujący cytat:Extensible Haskell Rodzaj Klasy
„[...] w przeciwieństwie do klas typu Haskell jest typ danych [...] jest zamknięte "w tym sensie, że nie można dodawać nowych typów do wszechświata bez rozszerzania typu danych.
Moje pytanie dla początkujących brzmi: w jakim sensie klasy typu Haskell to otwórz? Jak są rozszerzalne? Jakie są typowe teoretyczne konsekwencje posiadania tej właściwości (open vs closed)?
Dziękujemy!
Interpretacja typu-klasy-słownika jest raczej specyficzna dla ghc. W specyfikacji haskell nie ma niczego, co by tego wymagało, a inne implementacje (np. Jhc) używają innego podejścia. –
@JohnL Nadal jest przydatnym narzędziem mentalnym do zrozumienia zmysłu, w którym jest polimorficzny. –