Язык Haskell: О пользе и вреде лени: различия между версиями

В языке Haskell нет переменных и нет понятия состояния — множества значений всех текущих переменных. Как жить в таких необычных и жёстких условиях?! Рассмотрим ряд простых примеров.
 
В этом языке программирования есть базовые типы: <code>Integer</code> (целое число), <code>Char</code> (символ), <code>FloatDouble</code> (число с плавающей точкой), <code>Rational</code> (дробное). Есть специальные конструкции <code>()</code>, <code>[]</code> и <code>-&gt;</code>, которые позволяют определять новые типы на основании существующих.
 
Пусть <code>a</code> и <code>b</code> являются некоторыми типами данных. Тогда конструкция <code>[a]</code> означает новый тип — список элементов типа <code>a</code>. В частности тип <code>String</code> есть синоним типа <code>[Char]</code>.
Анонимный участник