一切都在标题中,但这里有一些背景信息:
我正在研究一种领域特定的语言,以表达在网络物理系统中常见的安全设计模式,涉及组件复制和交叉检查/投票。
目前语言是外部DSL,在数据流语言系列中。组件可以有多个输入和输出,子组件,有点像凿子,除了基类型不限于scala的内置值类型,并且可以是任何用户定义的类型。
我想利用Scala的类型系统和无形状,以便模式可以表达一次,并且在具有不同数量和类型的输入和输出的组件上进行实例化和类型检查,模式基本上复制组件N次(N被提升到类型级别)然后使用各种投票算法合并多个冗余输出。
然而,我很难弄清楚无形的背后的设计理念,似乎系统地使用了“Aux”型构造函数,我目前还没有掌握,
非常感谢任何关于无形的帮助,
此致
/雷米