我来自 C# 背景到 F#。到目前为止,我编写了简单的程序,并在 F# 交互方面花费了很多时间。
我坚持用两个 .fs 文件创建一个 VS F# 项目。
示例代码:
// part 1: functions
let rec gcd (a : uint64) (b : uint64) =
if b = 0UL then a
else gcd b (a % b)
// part 2: main()
let a, b = (13UL, 15UL)
do printfn "gcd of %d %d = %d" a b (gcd a b)
我想要两个 .fs 文件,即 Alg.fs 和 Program.fs,这样 Program.fs 将包含我正在工作的代码,而 Alg.fs 将包含算法。
采取的步骤:
我已经创建了这两个文件。编译器报错:Files in libraries or multiple-file applications must begin with a namespace or module declaration, e.g. 'namespace SomeNamespace.SubNamespace' or 'module SomeNamespace.SomeModule'
我已经插入module Program
和module Alg
。编译后的程序只执行来自 Alg.fs 的代码,完全忽略 Program.fs...
我在 Visual Studio 2010 中使用 F#
2.0。PS 我已经用谷歌搜索并检查了一些帖子,并阅读了有关模块的文档并在询问之前看到了相关问题。