Re[3]: оператор ?. не работает с option
От: BogdanMart Украина  
Дата: 11.12.11 23:32
Оценка:
Здравствуйте, _Claus_, Вы писали:

_C_>но ессно option[T] должна быть структурой по реализации, даже если ее удобно показывать как вариант.


По моему надо с любым вариантом сделать что то подобное -- запретить любым вариантам принимать значение null.

В хаскеле, например, Алгебраические типы (читай варианты) по поределению не могут быть null, собственно и понятия такого как null там нет.
Но у нас есть пережиток .NET'a как NULL.

Ну вообще исключать null из языка -- гемор в использовании, но в случаи с вариантами null не нужен. Например как list может быть null? по логике он должен быть либо [], либо [a1..an]. То же можно сказать про любой другой вариант, там где нужно неопределенное значение можно использовать option.

Поясню по другому: где видим класса -- понимаем что это может быть, либо null, либо экземпляр. В случае с вариантами -- подразумеваем, что это один из вариантов(извините за тавтологию)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.