我对使用F#编写的元编程示例感兴趣,这些示例演示了如何使用F#特定功能,例如F#标准库中的TryGetReflectedDefinition
函数。
我在哪里可以找到这样的例子?
答案 0 :(得分:10)
WebSharper和Unquote是使用引号的开源F#库的两个示例(Unquote不专门使用TryGetReflectedDefinition
,但我相信WebSharper会这样做。
FSharp.PowerPack.Linq是另一个例子。另外,我发现F#编译器中的implementation of quotations是一个有用且富有洞察力的参考。
答案 1 :(得分:4)
前段时间,我编写了一个项目,使用MSR Accelerator将F#引用转换为GPU代码。
这是一个相当简单的翻译器(例如与WebSharper相比,它非常复杂),但它应该展示您感兴趣的大部分功能。特别是,它翻译标有ReflectedDefinition
属性的函数。它也来自您最喜欢的科学计算领域: - )