繁体   English   中英

F#在运行时创建函数

[英]F# Create function at runtime

我知道这与这个SO问题这个 问题有关,但是我想知道是否(以及如何)可以在运行时创建新的F#函数。

我的意思是类似使用REPL而不显示它。 除了CodeDOM和反射或引用之外,还有其他选择吗?

如果在F#中无法实现,是否可以在任何其他.Net语言中实现?

当然可以,这就是DLR(动态语言运行时)的用途。 IronPython,IronRuby和其他完全符合您描述的动态语言都使用它。 DLR只是一个库,因此您可以根据需要在F#中使用它。

另一个选择是使用F#的高阶函数来实现类似的功能-这将非常灵活,但最终会稍慢一些,因为.NET CLR无法以优化的方式做很多事情(如果有的话)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM