Я пытаюсь понять, как манипулировать переменными скрипта guile через файл конфигурации, вместо того, чтобы редактировать исходный код.
Получил файл с именем test.cfg , который содержит это:
name = Gareth
my-num = 123
rand-string = Hello, world!
Вот сценарий с именем read-file , который у меня есть:
#!/usr/bin/guile \
-e main -s
!#
(use-modules (ice-9 textual-ports))
(define (read-file file)
(call-with-input-file file
(lambda (port)
(get-string-all port))))
(define get-name
(call-with-input-file "test.cfg"
;; Code to get value of `name` from test.cfg here.
))
(define (main args)
(display (read-file "test.cfg"))
(display (get-name))
(newline))
В конечном результате, когда name
изменяется в test.cfg , get-name
в read-file должен вернуть новое значение.