Articles of f#

在Linux上使用z3 .NET绑定时的警告(“未知参数”model_completion'“)

我在Linux下编译了昨天的z3 unstable分支的.NET绑定(奇怪的是,这个工作没有太多的痛苦),现在正在尝试在F#项目中使用它们。 这也行得通,但是在执行时,我在stderr上重复了以下几行: 警告:错误设置SOFT_TIMEOUT:未知参数'soft_timeout' 警告:错误设置MODEL_COMPLETITION:未知参数'model_completition' 这只发生在我们的项目中,而不是运行examples / dotnet / Program.cs的例子。 我不知道从哪里开始寻找这个问题的根源。 想法?

如何在Linux上使用fsharpc访问Nuget中的.dll

我试图从Linux上的fsharp代码中使用外部程序集,尽pipe遵循了我看到其他人使用的“-r:filename.dll”练习,但对我来说仍然是失败的。 一,源代码: tlewis@dev-aug16:~/dev/fsharp$ cat sqlp.fs open FSharp.Data.SqlProvider printfn "hw, sp" 正如你所看到的,我只是打开包装,不做任何事情。 其次,我们来看看我的nuget目录: tlewis@dev-aug16:~/dev/fsharp$ find nuget/ nuget/ nuget/SQLProvider.1.0.36 nuget/SQLProvider.1.0.36/SQLProvider.1.0.36.nupkg nuget/SQLProvider.1.0.36/lib nuget/SQLProvider.1.0.36/lib/FSharp.Data.SqlProvider.dll 正如你所看到的,我只安装了一个软件包。 第三,我们来看看我如何调用fsharpc: tlewis@dev-aug16:~/dev/fsharp$ fsharpc –warn:5 –nologo -g -r:/home/tlewis/dev/fsharp/nuget/SQLProvider.1.0.36/lib/FSharp.Data.SqlProvider.dll sqlp.fs –target:exe –fullpaths -o exe/sqlp.exe /home/tlewis/dev/fsharp/sqlp.fs(1,18): error FS0039: The namespace 'SqlProvider' is not defined 我正在使用绝对path的DLL文件,以及“ – 完整path”,因为我已经看到别人做的。 尽pipe如此,fsharpc仍然没有find名称空间。 最后,这是我的fsharp版本; 它只是现代Ubuntu上apt的标准版本: tlewis@dev-aug16:~/dev/fsharp$ dpkg -l fsharp Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend […]

F#代码在REPL中工作正常,但在编译期间会出现堆栈溢出

我想知道这是否是一个错误,或者如果我做错了什么。 我在mono / linux中运行F#,下面的代码崩溃给我一个堆栈溢出没有任何堆栈跟踪。 let rec gcd ab = match b with | x when x = 0 -> a | _ -> gcd b (a%b) let z = (gcd 12 3) printfn "%A" z 当我在REPL中运行相同的代码时,这工作正常。 有趣的是,这工作正常 let rec gcd ab = match b with | x when x = 0 -> a | _ […]

Monodevelop上的F#编译器不理解有效的Linux文件path

我是F#的新手。 当我尝试在Monodevelop中构build我的F#项目时出现以下错误: / home / greenrd / git / hello / hello:错误FS0229:打开二进制文件时出错'/usr/lib/mono/4.0/../../../../../usr/lib/mono/gac /kde-dotnet/4.1.0.0_ 194a23ba31c08164 / kde-dotnet.dll':无法find部分path“usr / lib / mono / gac / kde-dotnet / 4.1.0.0 _194a23ba31c08164 / kde-dotnet.dll” 。 (FS0229)(你好) 我不认为这是由于.NET中的260字符文件path限制,原因很简单,因为文件path只有102个字符。 可能是什么问题呢? file说: /usr/lib/mono/4.0/../../../../../usr/lib/mono/gac/kde-dotnet/4.1.0.0__194a23ba31c08164/kde-dotnet.dll:PE32 executable( DLL)(控制台)Intel 80386 Mono / .Net程序集,用于MS Windows 我甚至不知道这个文件名是从哪里来的,我没有在任何地方input这样一个奇怪的文件名。 我所做的只是添加KDE C#绑定作为项目的参考。

F#编辑器为Linux

我即将在Linux中开发一个F#项目,但我不知道任何具有F#支持的好编辑。 谷歌也不是真正的帮助,因为结果往往是相当 古老的 (任何人的MonoDevelop FunctionalVariations插件?)。 哪些支持F#语法突出显示和智能感知的文本编辑器适用于Linux? 你们用什么?

如何在Linux下使用F#轻松处理/ dev / input事件

我尝试用Rx和Rxx编写一个事件驱动的程序,与embedded式linux中的设备(如陀螺仪)一起工作。 它应该对简单的文件操作作出反应。 有没有办法处理Linux的低级别事件? (一个例子将不胜感激)

启动WebSharper客户端 – 服务器sitelet

我正在关注WebSharper Sitelet教程,比如这里的最小例子,但是我找不到文档来启动一个服务器端进程来托pipe在每个请求上运行dynamic代码的sitelet。 我可以将示例代码粘贴到我的编辑器中,并对其进行基本更改,但是在编译之后我不知道该怎么做。 我是否必须将其挂钩到更大的系统? 我在Linux上使用Emacs进行编码,所以我没有任何Visual Studio Just Does It (TM)的魔力来帮助我。

编译fsharp时无法findmsbuild

在尝试编译最新的fsharp代码之前,我已经编译并安装了Linux上运行在Linux上的RedHat Enterprise 7 linux发行版中的mono-5.0.1。 mono –version Mono JIT compiler version 5.0.1.1 (2017-02/5077205 Fri Jul 28 08:35:19 EDT 2017) Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com TLS: __thread SIGSEGV: normal Notifications: epoll Architecture: s390x Disabled: none Misc: softdebug GC: sgen (concurrent by default) 我在/ usr / local中安装了mono。 在尝试运行autogen.sh之前,我之前已经导出了以下envars: export PKG_CONFIG_PATH=/usr/local/mono/lib/pkgconfig/ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib export […]

读取/写入多个启动的进程的命令行

我想知道是否可以读取inputstream/写入多个启动的进程的输出stream。 我从现在(弱)的理解如何读/写启动的进程工作,它肯定看起来像它连接到我的程序的控制台input/输出stream的input/输出stream。 这确实是这样吗? 如果是这样的话,那么读/写不同的数据到几个启动的命令行将被certificate是复杂的,如果不是不可能的话,也不会实现。 我的理解是正确的吗? 如何处理几个启动的命令行? 一些代码: open System open System.IO open System.Diagnostics open System.Threading [<EntryPoint>] let main argv = let startInfo = ProcessStartInfo() startInfo.FileName <- "cmd.exe" startInfo.UseShellExecute <- false startInfo.RedirectStandardInput <- true startInfo.RedirectStandardOutput <- true let proc = Process.Start(startInfo) proc.StandardInput.WriteLine("svn log") Console.ReadKey() |> ignore 0 这个代码将会打印出来 svn: E155007: 'C:\x\y\z\bin\Debug' is not a working copy

完整静态编译的linux mono上的F#

我希望能够在Linux系统(Debian)上运行用F#编写的代码,但是我不太可能在其上安装Mono。 有没有什么办法可以将F#编译为完全静态的,并且对Mono完全没有依赖关系? 基本上只是结束了一个可执行的二进制文件,我可以像任何其他Linux二进制文件运行?