【发布时间】:2011-11-21 04:32:29
【问题描述】:
F# 附带对度量单位系统的特殊支持,该系统提供静态类型安全性,同时编译为数字类型,而不是通过包装/解包操作给运行时带来负担。
是否可以使用 Scala 的一些类型系统魔法来实现类似的东西?
【问题讨论】:
-
恕我直言,这不是基于类型系统,而是基于对这些注释的某种(预)编译器支持(它们无法进入已编译的程序集,只会产生编译器错误) - 所以如果不更改 scala 编译器,我认为你不能在这里做同样的事情。
-
也许是一个提示:ScalaU
-
this answer states 已经有一个 Java 实现,所以是的。我也看过一些概念验证,但没有研究过。
标签: scala types f# language-design units-of-measurement