Skip to main content

Command Palette

Search for a command to run...

tmp ... *Tmp

Published
1 min read
S

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

tmp - возвращает имя пути к упакованному (pack) any аргументу во временном каталоге локального процесса. Имя каталога состоит из пути к ".pil/tmp/" в домашнем каталоге пользователя, за которым следует текущий идентификатор процесса *Pid. Этот каталог автоматически создается при необходимости и удаляется после завершения процесса (bye).

(tmp ['any ..]) -> sym

*Tmp - глобальная переменная, содержащая имя временного каталога, созданного с помощью tmp.

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

: *Pid
-> 27140
: (tmp "foo" 123)
-> "/home/app/.pil/tmp/27140/foo123"
: (out (tmp "foo" 123) (println 'OK))
-> OK
: (dir (tmp))
-> ("foo123")
: (in (tmp "foo" 123) (read))
-> OK

: *Bye
-> ((saveHistory) (and *Tmp (call 'rm "-r" *Tmp)))
: (tmp "foo" 123)
-> "/home/app/.pil/tmp/27140/foo123"
: *Tmp
-> "/home/app/.pil/tmp/27140/"

More from this blog

Нетривиальный Repl

Это плавный переход от eval к loop к циклам и где уместно вспомнить, что эта тема уже затрагивалась в контексте самой часто употребляемой функции for и рекурсии. Repl как функция не анонсирована в документации, но есть авторская классификация в файла...

Jul 15, 20257 min read
A

abrakadabra

195 posts

Метамоделирование как интеграция философии, лингвистики и математики на базе информатики. Анализ теорий и практик программирования. Прецеденты оптимизации.