【发布时间】:2012-01-14 05:50:08
【问题描述】:
与this question 相似但不同。那里有很多好的答案,但没有一个是度量单位。
一个 .NET 兼容(甚至通过 COM,如果必要的话)的数学表达式评估器如何?
我已经为无单位表达式尝试过 NCalc。我知道 F# 可以在代码中做到这一点。 Google Calculator 很棒,但作为受支持的 API 不可用,并且不适合该项目的服务基础。
Here's an interesting paper on the subject。它涵盖了测量单位的计算,但省略了“加法常数”转换,例如摄氏到华氏(根据他们的结论)。它提出了一个关于物质的好观点。 “加仑汽油”与“加仑牛奶”。单位相同,但内容不同,因此图书馆可能应将其视为不同。使用正确的炼金术士方程,一加仑汽油能产出多少牛奶? :-P
NCalc 是否可以挂钩来实现这一点?否则,增强 NCalc 会涉及多少工作?是否有任何其他可以处理度量单位的 .Net 兼容库?
【问题讨论】:
-
您可以在运行时评估 F# 表达式。
-
F# 很棒,它只是不适合这种情况,除非它可以接受类似 googleCalc 的语法,不包括高级非表达式评估功能,允许自定义符号/变量绑定,并提供有用/简单错误以引导用户使用有效的表达式。你能提供一个像谷歌计算器一样的完整答案吗?
标签: .net interpreter units-of-measurement expression-evaluation ncalc