桂乐|如何解析文件?

时间:2018-09-03 02:16:49

标签: gnu guile

我试图弄清楚如何通过配置文件来操纵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))

最终结果是,在 test.cfg 中更改name时,读取文件中的get-name应该返回新值。

0 个答案:

没有答案