gpt4 book ai didi

f# - FSharp 嵌入式 API 添加变量

转载 作者:行者123 更新时间:2023-12-04 19:45:10 32 4
gpt4 key购买 nike

使用 Fsharp.Compiler.Serice Interactive API我想为我的 FsiEvaluationSession 对象设置变量。这可能吗?或者是否有另一种方法可以将 f# 嵌入到应用程序中以用于嵌入脚本?

最佳答案

我认为没有直接的方法可以做到这一点,但有一个可爱的解决方法:

// Define a mutable variable with default value
fsiSession.EvalInteraction "let mutable myVar = Unchecked.defaultof<int>"

// Create a function that sets the value of the variable
let f = evalExpressionTyped<int -> unit> "fun x -> myVar <- x"

// Run the function to set the value of `myVar` to whatever we want
f 42

// As a bonus, use variable shadowing to make it immutable
fsiSession.EvalInteraction "let myVar = myVar"

这使用 evalExpressionTyped来自 FCS 文档的帮助程序。

关于f# - FSharp 嵌入式 API 添加变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36508388/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com