【发布时间】:2018-05-23 14:41:37
【问题描述】:
例如,我想获得看起来像原生的“for”循环,它是在水晶的嵌入式宏语言中实现的,但在主要的“运行时”语言中不存在(出于原则原因):
for i in list do
end
for k, v in hash do
end
(这里“{}”是一个简单的块。我不能在这里使用 do .. end 语法(也许不是))。 会很好的实现multi-inlcude指令,比如:
includes MixinX, MixinY, MixinZ
等等…… 据我所知,宏(在提供的 sn-ps 中命名为“for”和“includes”)不能在没有双引号的情况下接受“i in list”。那么......只有一种方法可以做到这一点 - 扩展水晶的语法/词法解析器和分析器本身吗?
【问题讨论】:
标签: macros crystal-lang