up ... upd ... upp? ... uppc

Sergey ShishkinSergey Shishkin
1 min read

up - ищет (или модифиципует) cnt-ое ранее сохраненное значение sym в соответствующей окружающей среде. Если cnt не задано, используется 1. Разрешается опустить аргумент sym, тогда возвращается соответствующее выражение (вызов функции или метода).

: (let N 1 ((quote (N) (println N (up N))) 2))
2 1
-> 1
: (let N 1 ((quote (N) (println N (up N) (up N 7))) 2) N)
2 1 7
-> 7

: (de foo (N)
   (println (up))
   (inc N) )
-> foo
: (foo 7)
(foo 7)
-> 8

upd - синхронизирует внутреннее состояние всех переданных (внешних) символов, передавая их в wipe. upd — стандартная функция, передаваемая для фиксации во время транзакций базы данных.

(commit 'upd)  # Commit changes, informing all sister processes

upp? - возвращает any, когда аргумент — это строка (символ), которая начинается с заглавной буквы.

: (upp? "A")
-> "A"
: (upp? "a")
-> NIL
: (upp? 123)
-> NIL
: (upp? ".")
-> NIL

uppc - преобразование в верхний регистр: если any не является символом, он возвращается как есть. В противном случае возвращается новый временный символ со всеми символами any, преобразованными в верхний регистр.

https://picolisp.tiddlyhost.com/#up

0
Subscribe to my newsletter

Read articles from Sergey Shishkin directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Sergey Shishkin
Sergey Shishkin

Всегда чему-то учусь!