我正在研究一种情况,我想为典型语言中的字符串带来一些结构。并且想知道如何使用 Rebol 的零件盒来做到这一点。
所以假设我有一条看起来像这样的行,在我试图方言的原始语言中:
something = ("/foo/mumble" "/foo/${BAR}/baz")
我想使用 Rebol 的原语,所以肯定是文件路径。这是我脑海中想到的一个随机示例:
something: [%/foo/mumble [%/foo/ BAR %/baz]]
如果是代码,您将使用 REJOIN 或 COMBINE。但这并不是为了执行而设计的,它更像是一个配置文件。您不应该运行任意代码,而只是获取文件列表。
我不确定坚持使用字符串但仍然将这些类型作为 FILE! 是否可行。并非所有字符都可以在 FILE! 中使用,例如:
>> load "%/foo/${BAR}/baz"
== [%/foo/$ "BAR" /baz]
这让我想知道我在应该代表配置文件的 Rebol 数据中的选项是什么。我可以使用普通的旧字符串并像其他事情一样进行替换。也许用 OBJECT 块 REWORD 来表示环境?
无论如何,我想知道如何在声明性上下文中使用像这样的环境变量替换来表示文件名。