f#-interactive相关内容
更新:尝试了 11 月的 CTP 版本.相同的错误信息.忘了说这台服务器安装了 Ubuntu 服务器版.我在运行 Desktop 10.10 的 Ubuntu 桌面上没有这个问题.所以我怀疑可能是缺少一些与命令行相关的库.安装 libreadline-dev 和 libreadline5 后,错误消息消失了.但是fsi卡住的问题还是存在的. 更新 2:尝试了新的 Mono 2.8.1.同样的
..
由于我使用 F# 进行研究(特别是使用 F# 交互式),因此我希望拥有可切换的“调试时打印"功能. 我可以 let dprintfn = printfn F# 互动说 val dprintfn : (Printf.TextWriterFormat -> 'a) 我可以使用 dprintfn "myval1 = %d, other val = %A" a b 只要我想在我的脚本中.
..
免责声明: 总计 F#新手问题! 如果我在 Visual Studio 的 F# 文件中键入以下内容 #light让平方 =seq { for x in 1 .. 10 ->x * x }printf "%A" 方块 并通过突出显示并按Alt+Enter在其上运行F#交互,交互窗口中的输出为 >序列 [1;4;9;16;...]val平方:seq> 但我想看到完整的序列,即 >序列
..
如果使用 F# Interactive Shell (FSI),则推断的表达式类型 (signature) 和它的值一起打印到控制台: val it : int * string * float = (42, "Hello F#", 42.0) 如何在自己的代码中模仿相同的行为,例如获取推断类型作为 F# 表达式的字符串? 我不需要动态计算任何 F# 表达式,这些表达式在编译时已知并且是
..
在我当前的配色方案中,F# 交互式 shell 在 Visual Studio 中是不可读的.所有的颜色设置我都试过了,但我找不到它正在使用的设置. 如何在 Visual Studio 中更改 F# 交互式 shell 的颜色设置? 解决方案 Try Tools\Options\Environment\Fonts and Colors\ 只读区域 - 背景 纯文本 - 前
..
我想将 F# 交互式控制台与 Visual Studio 2010 中当前打开的解决方案中的项目一起使用.是否有一种快速简便的方法可以在 F# 交互式控制台中添加引用以引用当前打开的解决方案中的项目? 解决方案 如果是你经常引用的项目,你可以在工具->选项->F#工具->下添加对FSI命令行的“始终"引用F# 交互选项.添加一个 -r 开关,如: -r "C:\Users\yaddaya
..
我确信这一定是一件非常简单的事情,但我似乎无法让它发挥作用.假设我有一个 .fsx 脚本文件并希望以编程方式执行它.我猜一定有人在某个时候写过关于这个的博客,但我似乎找不到一个例子来执行我的简单场景.基本上,我想以编程方式复制当您右键单击 .fsx 文件并选择“Run with F# Interactive..." 解决方案 如评论中所问,您可以将 UseShellExecute 设置为
..
对于以下问题,我有什么样的策略.我想在 dll 中使用一个简单的类,该类链接到各种 dll、各种版本等. 作为一个 fsx 文件,我的脚本没有显示错误.但是在 fsharp 交互中运行它时,它告诉我 错误 FS0074:通过“theTypeIWantToUse"引用的类型在未引用的程序集中定义.您必须添加对程序集“Assembly"的引用. 当然引用了程序集,所以我想我需要添加对它引用
..
在 F# 交互中,如何查看此会话中定义的变量/函数列表?像 python 中的 whos() 函数或 R 中的 ls() 函数?谢谢. 解决方案 您或许可以使用 .NET 反射来实现这一点 - 局部变量和函数被定义为单个动态程序集中的静态属性/类型方法.您可以通过调用 GetExecutingAssembly(在 FSI 本身中)获取该程序集,然后浏览类型以找到所有合适的属性. 以下
..
在您告诉我在 .NETCore/.NET5(或更高版本)中运行 .fsx 脚本的方式是 dotnet fsi 之前,仅供参考:我已经知道了.我还不能升级,所以我仍在使用旧的 .NET 4.x 框架运行我的 .fsx 脚本. 为了做到这一点,并在 GithubActions CI 下运行它们,我有这个方便的 fsi.bat 文件: @ECHO 关闭SET ENTERPRISE=“%Progr
..
我觉得自己完全是个菜鸟,不得不问这个问题,但这让我很难过. 我设置了这样的格式字符串: let fs = "这是我的格式测试 %s" 然后我尝试像这样使用它: let s = sprintf fs “测试" 当我这样做时,我收到此错误: //stdin(26,17): error FS0001: The type 'string' is not compatible with th
..
我是 F# 的新手,我想弄清楚如何从字符串列表/数组中返回随机字符串值. 我有一个这样的列表: ["win8FF40", "win10Chrome45", "win7IE11"] 如何从上面的列表中随机选择并返回一项? 这是我的第一次尝试: let combos = ["win8FF40";"win10Chrome45";"win7IE11"]让 getrandomitem()
..
我想将一个或多个 .fsx 文件加载到 F# 交互中,并在范围内定义 .fsx 文件中定义的所有函数,以便我可以直接使用控制台中的函数. #load 指令执行指定的 .fsx 文件,但随后我无法再在 .fsx 中使用这些函数文件.有什么解决方法吗?谢谢. 解决方案 我怀疑您正在加载的脚本不在可能导致您出现问题的模块中.只需添加 module Script1 在第一个脚本中然后你可
..
在使用 F# Interactive 时,我需要捕获 F# 函数的输入和输出.当程序在 Visual Studio 下使用 F5 或 Ctrl-F5 运行时,我能够让 NLog 正常工作.同样,包含要输出到日志的语句的相同方法也能正常工作,并且在通过 F# Interactive 调用时会被调用;日志文件中什么都没有. 我还尝试使用 F# Interactive 执行以下操作以设置对 NLo
..
我想编写一些代码来运行一系列 F# 脚本 (.fsx).问题是我可以拥有数百个脚本,如果我这样做: 让 shell 执行程序 args =让 startInfo = new ProcessStartInfo()做 startInfo.FileName
..
我正在使用 F# 交互式,我正在计算一些大型列表和数组,但我不想让交互式窗口发布所有这些信息.有没有办法抑制输出? 具体来说,我正在开发单线程和多线程算法,并评估在什么时候从单线程函数更改为多线程函数会变得更有效率.我想让 F# Interactive 报告函数的运行时间,我一直在使用 #time,但我不想在将大数据矩阵打印到屏幕时向上滚动.如果有一种方法可以在保持交互式环境不写出矩阵的同时
..
是否有一种简单的方法可以将 F# 交互式 (fsi.exe) 终端嵌入到应用程序中?更一般地说,fsi.exe 的代码是否可用于进行调整等? 解决方案 fsi.exe 的代码随 CTP 一起提供(检查许可证,但最终我认为我们最终想要使其成为 MS-PL,如果它是还没有). 没有特别简单的嵌入方法.
..
您有一个包含一个 C# 项目的解决方案.SomeComp.Framework 就是这个名字.您将 F# 项目添加到解决方案中.您在 F# 项目中引用 SomeComp.Framework 项目.您将脚本文件 - test.fsx 插入到 F# 项目中.在脚本文件中引用 C# 程序集的正确方法是什么? #r "SomeComp.Framework.dll"//不起作用 有没有办法在不硬编码路径的
..
我已经阅读了大量Expert F# 并且正在努力构建一个实际的应用程序.在调试时,我已经习惯于传递这样的 fsi 命令以使 repl 窗口中的内容清晰可见: fsi.AddPrinter(fun (x : myType) -> myType.ToString()) 我想扩展它以使用 printf 格式化程序,所以我可以输入例如 printf "%A" instanceOfMyType 并控
..
我知道其他 问题 关于 F# 中的模块和命名空间,但它们现在对我没有帮助. 我有一个项目 Utilities.fs namespace Company.Project.Namespace模块实用程序 =//这里的东西 Functions.fs namespace Company.Project.Namespace打开实用程序模块功能 =//这里的东西 我正在尝试在 fsx 中测
..