我正在编写一个非常初学者的F#程序( F#Core & Visual Studio代码),如下所示:
1.Sort.fs
namespace Demo
module Sort =
let rec quickSort list =
match list with
| [] -> []
| head::tail ->
let smalls =
tail |> List.filter(fun c-> c<head)|> quickSort
let bigs =
tail |> List.filter(fun c-> c>=head)|> quickSort
List.concat [smalls;[head];bigs]
2.Program.fs
namespace Demo
open Sort
module Program =
let list = [3;1;8;4;9;5;7;6]
[<EntryPoint>]
let main argv =
list |> Sort.quickSort |> printfn "%A"
printfn "Hello World from F#!"
0
但是,当我尝试open Sort
模块进入Main
时,我遇到以下错误:
命名空间或模块&#39;排序&#39;没有定义。
价值,名称空间,类型或模块&#39;排序&#39;没有定义。也许你想要以下之一: SQRT
如果我把sort模块放在同一个文件下 - `Program.fs,一切正常。还有其他需要引用文件吗?