| |||
![]()
|
![]() ![]() |
![]()
А вообще по первому впечатлению AGDA забавно, но не то, что мне хотелось: Заинтересовался я наличием там типа List⁺ - но был разочарован: Он оказался просто парой: List⁺ : ∀ {a} → Set a → Set a List⁺ A = A × List A Что можно и на Haskell спокойной написать - и даже посредством классов типов сделать "safe" специализацией List. А я надеялся, что там можно как-то на уровне типовой системы накладывать допограничения на уже имеющийся тип, так чтобы List⁺ был разновидностю List, но такой, что на уровне типов зашито, что он ≠ [] Хотя все равно язычок интересный, да и то, что наконец-то кто-то догадался использовать матзначки из unicode в синтаксисе - порадовало. Сколько можно. |
||||||||||||||
![]() |
![]() |