Вход:  Пароль:  
FreeSource: AltLinux/Sisyphus/Alterator/libraries ...
Free Source | Каталог | Изменения | НовыеКомментарии | Пользователи | Регистрация |
Это старая версия AltLinux/Sisyphus/Alterator/libraries за 2006-11-22 12:11:19..

Наряду с srfi-1,srfi-2,srfi-11,srfi-13 alterator предоставляет свои функции, аналогов которым в R5RS и выше перечисленных srfi к сожалению не обнаружилось.


Оглавление документа

Работа со строками

->string

Параметры:

Превращает любой datum в строку. Превращение происходит согласно правилам display.

string-cut

Параметры:

Рубит строку по символу разделителю и возвращает список полученных кусков. Если рубить нечего, то возвращает список состоящий из исходной строки.
Сейчас string-cut приравнивается к string-split – специфичная для guile функция.

string-cut-repeated

Вариант предыдущей команды, которой исключает из результата пустые строки. Фактически получается игнорирование повторяющихся символов-разделителей.

string-quote

Параметры:

Вариант string-map, с той разницей что преобразователь имеет тип не char->char, а char->string. Это позволяет использовать оный движок для проведения квотирования, когда один символ в строке заменятся двумя и более.

Работа со списками

append1

Параметры:


Специализированный вариант append, для добавления ровно одного элемента.
(append1 lst item) == (append lst (list item))

list-remove

Параметры:


Возвращает исходный список с удалённым элементом в позиции num.

list-exchange

Параметры:


Возвращает исходный список, в котором элементы в позициязх num и num+1 переставлены местами.

list-flat

«Расплющивает» переданный в качестве едиственного параметра список, перенося элементы подсписков на уровень выше.

Работа с ассоциативными списками

alist-set

Параметры:


Вариант acons, но только в отличие от него не накапливает дубликаты в списке. Для сравнения использует eq?

cond-assoc,cond-assq

Параметры:


Вариант assoc (assq), который возвращает найденный ключ или #f или значение по-умолчанию.
Note: в guile есть похожее семейство функций assoc-ref/assq-ref, но они все не поддерживают управление значением по-умолчанию.


Прочий синтаксический сахар

thunk

тоже самое что и lambda()

begin-1

тоже что и begin, но возвращает результат выполнения первой инструкции (а не последней). Аналог prog1 из Common Lisp.



 
Файлов нет. [Показать файлы/форму]
Комментариев нет. [Показать комментарии/форму]