Шаг 65.
Основы языка Haskell.
Список как фундаментальный тип данных. Уровень вложенности списка

    На этом шаге мы дадим определение и приведем примеры списков различных уровней вложенности.

    Элементами списка могут быть как атомы, так и другие списки.

Определение ([1, с.104]).
Уровнем вложенности списка называется максимальное количество открывающих скобок "[", которые предваряют собой какой-либо элемент списка (однако в это количество не входят те скобки, которые закрываются до этого элемента).


    Примеры конструирования списков по определению.
   1. []                 => []            (уровень вложенности: 1)
   2. 2:[]               => [2]           (уровень вложенности: 1)
   3. 0:(5:(7:(9:[])))   => [0,5,7,9]     (уровень вложенности: 1)
   4. 0:5:7:9:[]         => [0,5,7,9]     (уровень вложенности: 1)
   5. 'a':'b':'x':[]     => "abx"         (уровень вложенности: 1)
   6. 'a':'b':'x':[]     => ['a','b','x'] (уровень вложенности: 1)
   7. (1:[]):[]:[]       => [[1],[]]      (уровень вложенности: 2)
   8. ((1:[]):[]):[]     => [[[1]]]       (уровень вложенности: 3)

(1)Душкин Р.В. Функциональное программирование на языке Haskell. - М.: ДМК Пресс, 2007. - 608 с.

    На следующем шаге мы рассмотрим списочную и точечную нотацию.




Предыдущий шаг Содержание Следующий шаг