Size: a a a

Сообщество Scheme

2019 June 13

L🇷

Lazzlo 🇷🇺 in Сообщество Scheme
он прикрепляет первый аргумент (елемент) к списку во втором аргументе и возвращяет получившийся список
источник

O

O in Сообщество Scheme
да то же что и лист
Scheme Procedure: cons* arg1 arg2 …

   Like list, but the last arg provides the tail of the constructed list, returning (cons arg1 (cons arg2 (cons … argn))). Requires at least one argument. If given one argument, that argument is returned as result. This function is called list* in some other Schemes and in Common LISP.
https://www.gnu.org/software/guile/manual/html_node/List-Constructors.html#index-cons_002a
источник

PG

Pïg Grëënëst in Сообщество Scheme
Не, (list x...) это (cons* x... nil)
источник

L🇷

Lazzlo 🇷🇺 in Сообщество Scheme
шо значит эта звёздочка?
источник

PG

Pïg Grëënëst in Сообщество Scheme
Ничего, просто часть имени
источник

L🇷

Lazzlo 🇷🇺 in Сообщество Scheme
??, чем cons* отличаеться от cons ?
источник

O

O in Сообщество Scheme
Lazzlo 🇷🇺
шо значит эта звёздочка?
что бы рзаличать cons - создает обьект памяти  (cons 1 2) > (1 . 2)
и
(cons* 1) > (1 . nil)
(cons* 1 2) > (1 2 nil)
вроде так
источник

O

O in Сообщество Scheme
cons - только 2 элемента принимает
cons* -  N элементов
источник

L🇷

Lazzlo 🇷🇺 in Сообщество Scheme
O
cons - только 2 элемента принимает
cons* -  N элементов
а, ясно, спс
источник

O

O in Сообщество Scheme
на вики там нормально в краце описано
источник

L🇷

Lazzlo 🇷🇺 in Сообщество Scheme
там нету про звёздочку
источник

O

O in Сообщество Scheme
в мануале есть, смотри выше ссылку
источник

O

O in Сообщество Scheme
O
да то же что и лист
Scheme Procedure: cons* arg1 arg2 …

   Like list, but the last arg provides the tail of the constructed list, returning (cons arg1 (cons arg2 (cons … argn))). Requires at least one argument. If given one argument, that argument is returned as result. This function is called list* in some other Schemes and in Common LISP.
https://www.gnu.org/software/guile/manual/html_node/List-Constructors.html#index-cons_002a
<—
источник

O

O in Сообщество Scheme
Кому интересна реализация и оснвы на  Rust https://rust-unofficial.github.io/too-many-lists/
источник

O

O in Сообщество Scheme
списки один с самх заморочиных типов данных...
источник

AZ

Aydar Zarifullin in Сообщество Scheme
O
списки один с самх заморочиных типов данных...
Не понял. Односвязный список это довольно простой тип
источник

O

O in Сообщество Scheme
Aydar Zarifullin
Не понял. Односвязный список это довольно простой тип
реализация на машинном уровне не простая
источник

AZ

Aydar Zarifullin in Сообщество Scheme
O
реализация на машинном уровне не простая
Так про все можно сказать.
источник

L🇷

Lazzlo 🇷🇺 in Сообщество Scheme
Aydar Zarifullin
Не понял. Односвязный список это довольно простой тип
так тоже)
источник

AZ

Aydar Zarifullin in Сообщество Scheme
Lazzlo 🇷🇺
так тоже)
Я конечно в том плане что на любом хай левел языке он просто реализуется
источник