1. Сохранение настроек
> (set 'params '((var1 1) (var2 2) (var3 3)))
((var1 1) (var2 2) (var3 3))
> (save "params.lsp" 'params)
true
2. Загрузка настроек
> (load "params.lsp")
((var1 1) (var2 2) (var3 3))
> (bind params)
3
> var1
1
Команда bind, грубо говоря, выполняет над элементам списка типа (a b) операцию (set 'a b).
3. Изменение настроек, если имя переменной известно
> (pop-assoc 'var1 params)
(var1 1)
> (push '(var1 5) params)
((var1 5) (var2 2) (var3 3))
4. Изменение настроек, если имя переменной приходит в другой переменной
> (set 'text-var "var1" 'text-value "7")
"7"
> (pop-assoc (sym text-var) params)
(var1 5)
> (push (list (sym text-var) (int text-value)) params)
((var1 7) (var2 2) (var3 3))
Оператор sym преобразует строку "x" в переменную 'x.
Комментариев нет:
Отправить комментарий