LINUX.ORG.RU

История изменений

Исправление monk, (текущая версия) :

В других языках не принято смотреть на части списка, как на отдельные сущности, сам List может быть как массивом, так и списком.

Именно так. А в лиспе список в первую очередь конструкция для рекурсивной обработки. И в Haskell также.

У меня кстати вопрос по лиспу, вот есть у меня элемент, есть список, могу ли я взять эффективно предыдущий элемент от этого элемента?

Если это стандартный односвязный список, то очевидно, что нет (нужно искать от головы до предыдущего).

Можно использовать двусвязный список https://github.com/krzysz00/dlist

Тогда просто (prev element).

Исправление monk, :

> В других языках не принято смотреть на части списка, как на отдельные сущности, сам List может быть как массивом, так и списком.

Именно так. А в лиспе список в первую очередь конструкция для рекурсивной обработки. И в Haskell также.

У меня кстати вопрос по лиспу, вот есть у меня элемент, есть список, могу ли я взять эффективно предыдущий элемент от этого элемента?

Если это стандартный односвязный список, то очевидно, что нет (нужно искать от головы до предыдущего).

Можно использовать двусвязный список https://github.com/krzysz00/dlist

Тогда просто (prev element).

Исходная версия monk, :

> В других языках не принято смотреть на части списка, как на отдельные сущности, сам List может быть как массивом, так и списком.

Именно так. А в лиспе список в первую очередь конструкция для рекурсивной обработки. И в Haskell также.

У меня кстати вопрос по лиспу, вот есть у меня элемент, есть список, могу ли я взять эффективно предыдущий элемент от этого элемента?

Если это стандартный односвязный список, то очевидно, что нет (нужно искать от головы до предыдущего).

Можно использовать https://github.com/krzysz00/dlist

Тогда просто (prev element).