問題タブ [scala-pickling]
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.
scala - Scala コンパイル中のメモリ不足エラー
私はマクロを多用したscala-pickling
を とともに使用shapeless
していますが、明らかなメモリ不足エラーで Scala 2.10.3 コンパイラをクラッシュさせ続けています。エラー メッセージの末尾は次のようになります。
私はシステムメモリを監視していますが、十分にあるので、これが実際にメモリ割り当ての問題である場合は、問題を解決するためにどこかに設定できる JVM フラグがあると思います。
ただし、paulp の sbtスクリプトのヒープ設定を に調整して、使用可能なメモリを増やしてみましたが、それでもこのエラーが発生します。これは正しいフラグですか?-Xmx8g
アイデア?
編集:「scala-pickling」および「shapeless」タグを追加しました。これは、これらのライブラリの他のユーザーが遭遇した可能性があるためです。
scala - Scala pickling: 自分のクラス用のシンプルなカスタム ピックラー?
私のScala NLP(自然言語処理)アプリで、比較的単純な構造であるが大きくて作成に時間がかかるいくつかのクラスをピクルしようとしています。大量のデータがあるため、ピクルと esp が必要です。膨張せずにすばやく解凍します。Java のシリアライゼーションは、この点で明らかに問題があります。Kryo については知っていますが、使用したことはありません。私は Apache Avro にも遭遇しましたが、これは似ているように見えますが、通常、適切なソリューションとして言及されていない理由はよくわかりません。どちらも Scala 固有ではなく、Scala Pickling と呼ばれる Scala 固有のパッケージがあるようです。残念ながら、ほとんどすべてのドキュメントが不足しており、カスタム ピッカーを作成する方法がわかりません。
ここに質問があります:
Scala Pickling: ネストされた構造のカスタム pickler / unpickler を書く
その質問にはまだいくつかのコンテキストが欠けています。また、Kryo や Avro の例と比較して、カスタム ピックラーを作成するには非常に多くのボイラープレートのように見えます。
シリアル化する必要があるクラスの一部を次に示します。
できるだけボイラープレートを使用しない方法でカスタムピッカー/アンピッカーを作成するにはどうすればよいですか (同様の処理が必要な他のクラスが多数あるため)。
ありがとう!
scala - クラスを別のパッケージに移動した後に MissingRequirementError を取得する
そのため、パッケージをもう少しうまく整理しようとしていましたが、いくつかのクラスを別のパッケージに移動した後、コードで次の例外が発生しました。
すべてを同じパッケージに残すか、これらのクラスを同じファイルで宣言すると、問題なく動作します。
誰かがこれを修正する方法について教えてもらえますか?
解決済み: この問題もある場合、問題は Pickling のシリアライズ方法にありました。json には、type のフィールド「tpe」があり、
に
これは新しいパッケージでした (実際には私のパッケージ名ではありません)。この例が将来誰かを助けることができることを願っています。
scala - 種類が不明な場合の解凍
Scala Pickling を使用して、一般的な unpickling ロジックをプログラムしようとしています。
A と B の 2 つの型があり、それらをバイト配列にピクルするとします。
このバイト配列を取得して別のマシンに送信すると、バイト配列として受信されます。
unpickle する必要がありますが、バイト配列がタイプ A 用なのかタイプ B 用なのかわかりません。
アンピッキング部分をどのようにプログラムしますか? A と B を別の型 (T など) に拡張させてから、unpickle[T] を呼び出してから、A または B の結果に対してパターン マッチを行いますか?
それとも、タイプ A または B のインスタンスに異なる番号を使用する Byte などのインスタンス変数を T に追加し、それに基づいて unpickle[A] または unpickle[B] を呼び出しますか?
更新: Scala Pickling テストスイートを調べると、私が見つけた最も近いものはbase.scalaで、これは最初のオプションのようなものです。
scala - org.scalamacros:quasiquotes で競合するクロスバージョン サフィックス
プロジェクトの1 つでscala-picklingを使用しようとしています。ピクルスも使用しているように見えるマクロイドのビルドファイルを模倣しようとしましたが、このエラーが発生し続けます:sbt test
完全なビルド ログはこちらです。私は何を間違っていますか?これを修正するには、 build.sbtで何を変更すればよいですか? 2.10.x
また、との両方に対してライブラリをクロス コンパイルしてリリースできるはず2.11.x
です。
scala - 自明でないケースでの scala 酸洗い
それを漬ける?
そして何が起こっているのですか?
した
scala/pickling の良い点は、場合によっては機能することです。