问题标签 [fsi]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
166 浏览

f# - F# 命令行 (fsi) 无法识别函数,编译错误,为什么?

我在命令行下尝试了 F#,它无法识别函数定义

问题:我的程序有什么错误吗?我将 f 的定义和用法复制并粘贴到 Visual Studio 的 F# 项目中,它运行正常。

但是为什么命令行会失败?

0 投票
1 回答
320 浏览

sqlite - 在 F# 中释放 SQLite 资源

考虑以下 F# 脚本,该脚本创建一个简单的 SQLite 数据库和表,然后应将其删除。但是,SQLite 对象似乎没有被正确处理,并且没有释放它对文件的锁定。

我在 F# 方面很差,但我的理解use是对象的资源会在超出范围时被处理掉,但在这种情况下似乎并非如此。我也试过打电话Dispose()也无济于事。

谁能阐明我如何在 F# 中正确处理 SQLite 对象?

0 投票
2 回答
157 浏览

f# - Can I get the inferred type of a value, without the contents, in F# Interactive?

When a value is created in the F# Interactive console the inferred type and contents of the value are displayed.

How can I, at a later date, redisplay the inferred type without showing all the contents?

For example, I have an array, mydata of 1000 items. Typing mydata into the F# Interactive console will display the type, but also the contents of the array.

0 投票
1 回答
157 浏览

f# - 是否可以使用 FSI 库跟踪 F# 脚本中的当前行

我们正在使用 FSharp 编译器服务 FSI 评估会话来执行 DSL。准确地说,我们使用 F# 代码来模拟 CNC 机器的 G 代码。随着 FSI 脚本的每一行将机器移动到不同的位置,我们的用户希望看到正在执行的脚本的当前行与机器的位置同步。

是否可以从 FSI 评估会话中获取回调,指示当前正在执行的行?

0 投票
1 回答
230 浏览

f# - FSharp Interactive 中的“命名空间 FSI_00XX”是什么意思?

每次我在 Visual Studio 2015 的 FSharp Interactive 中加载 FSX 脚本文件(或任何其他文件)时,它都会打印一条消息:

FSX 是否为空、是否包含一种或多种类型或模块都无关紧要。结果始终是加载消息(足够清晰),然后是namespace FSI_00XX消息,其中 XX 是增量数字。即,如果我再次运行上述命令(无论是否更改文件),它都会显示:

它看起来像一个错误,但显然不是。我的猜测是,它是一个隐式命名空间,当前的命名空间会被设置为最新的。这是否也意味着我可以使用以前的命名空间引用以前的版本?

或者,如果不是这样,它代表什么?

注意:如果我使用代码片段的“发送到交互式”,则不会出现此消息。

0 投票
1 回答
288 浏览

dll - Visual Studio 2015 中的 F# 交互可能会忽略 DLL 包含路径

我有一个 DLL 加载指令列表,如下所示:

请注意,该列表引用了 Newtonsoft.Json.dll(版本 7.0.1)。但是,当我在 FSI 中执行使用引用 DLL 的代码时,Visual Studio 会从不同的位置加载 Newtonsoft.Json,如其日志所示:

绑定会话到 'C:\Projects\Samples\fsharpreactivepatterns\packages\Akka\lib\net45\Akka.dll'... 绑定会话到 'C:\Program Files (x86)\Microsoft Visual Studio 12.0\Blend\Newtonsoft. Json.dll'...

Newtonsoft.Json.dll 甚至不指向 Visual Studio 2015 文件夹之一,它引用了也安装在我的机器上的 Visual Studio 2013 中的 DLL。

这是我到目前为止找到的解决方法:

现在 FSI 加载并使用正确的 Newtonsoft.Json 版本。

有没有更好的方法来确保 FSI 使用 #r 指令中指定的 DLL 路径?

0 投票
1 回答
117 浏览

module - F# 命名空间和模块:来自 Wikibooks 的精彩合集

我正在尝试在 Wikibooks https://en.wikibooks.org/wiki/F_Sharp_Programming/Advanced_Data_Structures上使用库 AwesomeCollections

从那个页面,我复制粘贴到 2 个单独的文件中,代码标记为 .fsi 和 .fs

我必须承认我不太了解 .fsi 和 .fs 文件如何交互,并且在https://msdn.microsoft.com/en-us/library/dd233196.aspx上找到的解释对我来说很神秘。

通过一些重新格式化,如果我提出解决方案并仅使用 .fs 文件,它就可以正常工作。

但是,同时使用 .fsi 和 .fs 文件时,我收到错误消息,例如“未定义命名空间 'Heap'”(在项目的主 .fs 文件中)“没有可用于类型 'int BinaryHeap 的构造函数'"(在项目的主 .fs 文件中)

“实现文件中出现意外的关键字 'type'”(尝试在 .fs 文件中定义类型 Queue 时)

AwesomeCollections.fs

maintenance.fs(尝试使用这些库的主程序)

最后,如果在解决方案中,我决定单独使用以下文件 AwesomeCollections_bis.fs(无 fsi 文件),代码将编译正常。

我可以看到缩进很重要,我认为使用它可以解决问题,但它不适合我。

感谢任何慷慨帮助的人!

0 投票
1 回答
166 浏览

f# - 使用 fsi 中的 XPlot 时出现异常

我正在尝试从 FSI运行一个简单的Xplot示例。我已经安装了 XPlot 的所有nuget 包,并将示例复制到他们的 hello world 页面中。

现在,例如,当我尝试获取图表的 HTML...chart.Html

...我收到以下错误:

我在这里做错了什么?我怎样才能让它工作?

非常感谢,

0 投票
0 回答
96 浏览

f# - F# Interactive 中的 Xamarin.Forms

通过引用默认的 WPF DLL,使用纯代码 WPF 可以很容易地做任何事情:

...您可以在窗口仍打开时对其进行操作...

...然后单击按钮以查看它的工作原理。这似乎是构建 UI 组件的一种非常强大的方法。

有没有办法用 Xamarin.Forms 做同样的事情?

0 投票
9 回答
30162 浏览

visual-studio-code - 如何将 VS Code 输出窗口显示到一侧而不是下方

在我的 VS Code 设置中,我看到主文本编辑器窗格下方的输出/FSI 框架如下所示:

在此处输入图像描述

而我希望它出现在并排视图中的右侧,就像它在此链接中的图像上一样:http: //www.wintellect.com/devcenter/jwood/a-quick-look-at- f-in-visual-studio-code

有没有我在某处找不到的配置选项?

我尝试了谷歌搜索,但画了一个空白,在描述配置选项的 vs 代码站点页面上提到的配置选项中看不到任何明显的东西