私はこのコードを持っていますYoghurt.Fruit.fs
module Yoghurt.Fruit
open FSharp.Data
type Fruit = JsonProvider<"fruit.json">
let fruit = Fruit.Load("fruit.json")
let fruitExists name = fruit.Callouts |> Array.exists (fun el -> el.Name = name)
Mono を使用して OSX でこのコンパイル コマンドを実行しています。
fsharpc --nologo -r ../../fsharp-lib/Fhsarp.Data/FSharp.Data.dll Yoghurt.Fruit.fs -a -o:bin/Yoghurt.Fruit.dll
このエラーが発生します
* Assertion at threads.c:1360, condition 'internal' not met
Illegal instruction: 4
(nb first ' internal の前に実際に ` ここで書式設定のために編集)
このエラーが何を意味するのか、なぜエラーが発生するのかわかりません。この方法でコンパイルしているファイルのコレクションがあり.fs
ます(それらに対してテストを実行し、最終的にそれらすべてを.fsx
ファイルで使用します)。メイン.fsx
ファイルには、このコードがあります
#r "/Users/philharvey/Documents/code/fsharp/fsharp-lib/Fhsarp.Data/FSharp.Data.dll"
open FSharp.Data
type Fruit = JsonProvider<"fruit.json">
let fruit = Fruit.Load("fruit.json")
let fruitExists name = fruit.Callouts |> Array.exists (fun el -> el.Name = name)
これはうまく機能します。このコードをモジュールに引き出して、個別にテストしたいと本当に思っています(fruitExists
問題をこれに要約したため、リストしていない機能があります)。
誰にも洞察がありますか?
編集
の結果mono -V
Mono JIT compiler version 3.0.10 ((no/eff4cb5 Sat Apr 13 19:24:30 EDT 2013)
Copyright (C) 2002-2012 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
TLS: normal
SIGSEGV: altstack
Notification: kqueue
Architecture: x86
Disabled: none
Misc: softdebug
LLVM: yes(3.2svn-mono)
GC: Included Boehm (with typed GC)
fsharpc
与えるF# Compiler for F# 3.0 (Open Source Edition)
(そして追加情報については、これをテストに使用していますMono.framework/Versions/3.0.10/bin/nunit-console4
編集 2
FSharp.Data Version 1.1.5
編集 3
詳細: 上記のように を使用してテストしまし.fsx
た。それは機能しますが、機能しません(上記と同じエラーが発生します)。ここからテンプレート (基本) を使用してテストも行いましたhttp://blogs.msdn.com/b/fsharpteam/archive/2011/07/30/f-console-application-template.aspx。タイプ プロバイダーを使用すると、同じエラーが発生します。fsharpi
fsharpc
JsonProvider
fsharpi
fsharpc
fsharpc