比如现在要做一个有类似 C 语言类型检查的 dsl 但是 rb 不会把一个变量规定为一个类型 a = A.new a = B.new 如果要做类型检查就必须自己手工(没做过,应该很不好做吧) 问题:如何用 rb 做一个强类型 DSL 呢?(不自己做类型检查)
你把要被检查的 ruby 代码发出来一下看看,可以吗?
我以前也是这样想的。后来还是觉得“约定大于配置”这句话比较实际。
你也可以搜索 ruby sorbet
其实我没有真的尝试过做这样的一个 DSL 只是做别的东西的时候联想到了=。=
我记得 Dry.rb 实现了一个类似的东西
两种方法:
感谢楼上两位老哥回复。 我觉得 Sorbet 看着挺靠谱的
需求是?
没需求。只是偶然想到的