Date: 2012-01-31 05:58 am (UTC)
ext_615659: (0)
Пример с факториалом мне не очень нравится, потому что тут использование эксепшна или option — решение, продиктованное никак не сущностью факториала, а только и исключительно слабостью системы типов джавы. В языке, где есть чистые инты и constrained-типы, это бы не понадобилось. Как-то нехорошо показывать элегантные идеи (Вы же, наверное, к аппликативным функторам и idiom brackets ведёте?) следует показывать на неэлегантных примерах.

Кстати, с неущербными примерами всё даже в Хаскеле плохо: Во всех языках с тьюринг-полной рекурсией в качестве примитива, все функции на самом деле не функции, а частичные функции, так что с точки зрения пуриста там весь мир надо оборачивать в idiom brackets для Option и рассматривать композицию функций не как честную композицию функций, а “(f ∘ g) if g terminates, ⊥ otherwise”.

Вот не люблю вот это вот всей душой, но отчего-то никто не пишет на агде, а эпиграмма-2 вообще не готова.

P.S. От души не понимаю, почему Option[T] не назвали Optional[T]. Поскупились на два символа, а как испортили дело. Either тоже неудачное название; вполне удачное для типа Either[A, B], в котором A и B играют симметричные роли, и совершенно идиотское для монады, где роли уже вопиюще асимметричны. Уж не знаю, как это следовало назвать, может Alternate[T, AltT], хотя наверное можно и получше выдумать.
This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

Profile

juan_gandhi: (Default)
Juan-Carlos Gandhi

December 2025

S M T W T F S
  1 2 3 4 56
7 89101112 13
14 151617 181920
21 222324252627
28293031   

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Dec. 24th, 2025 07:33 am
Powered by Dreamwidth Studios