为什么BOOST :: HANA :: EXAREMIS ::键入实验功能?类型列表的棘手是什么



我正在研究hana,我很惊讶地看到它具有 type的概念(类型的"类型的容器",类似于一个单元素元素,没有实际值(,但是类型(type的序列(是实验特征。

有人知道为什么吗?与单一类型的容器相反的类型列表是什么?

答案基本上是杰森所说的:

我想将类型视为hana::Sequence,但不会通过法律,因为它不会容纳任何类型的价值(例如具有运行时状态的值(。

"问题"是不能使hana::types成为hana::Sequence,因为hana::Sequence应该能够保持任意物品,而不仅仅是类型。虽然这似乎没什么大不了的,但实际上是。例如,我们也将无法满足hana::Monad,因为这需要hana::flatten,其签名为M<M<T>> -> M<T>,对于任意hana::Monad M。由于hana::types只能容纳类型,因此您无法拥有例如。 hana::types<hana::types<int, char>, hana::types<float, long>>没有特殊评估。

无论解决方案是什么,我都想找到一个不会打破HANA概念完整性的解决方案,同时仍然允许更加汇编的高效类型列表。

最新更新