問題タブ [bytestring]

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.

0 投票する
1 に答える
1100 参照

http - ByteString は異なる ByteString を期待しています

このコードは型チェックを行いません:

次のエラーをスローします。

これを修正するには?他の ByteString バリアントに変更しても機能しません。

simpleHttp関数のタイプは次のようになりますsimpleHttp :: Control.Monad.IO.Class.MonadIO m => String -> m Data.ByteString.Lazy.Internal.ByteString。そこで IO モナド内で ByteString を取得して試してみますunpackが、これはエラーになります。

0 投票する
4 に答える
935 参照

haskell - 文字の頻度

Haskellを使用して、ファイル内の文字の頻度を見つけようとしています。〜500MBのサイズのファイルを処理できるようにしたい。

今まで試したこと

  1. それは仕事をしますが、ファイルを256回解析するので少し遅いです

    /li>
  2. Data.Map も使用してみましたが、プログラムがメモリ不足になります (ghc インタープリターで)。

    /li>
0 投票する
1 に答える
334 参照

haskell - parsec コンビネータと Text/ByteString

Haskell パーサー/コンビネーター Parsec は、Data.ByteStringおよびからの入力ストリームをサポートしますData.Text。今後のリリースでこれらのタイプのサポートをさらに追加する予定はありますか? コンビネータ (many、sepby、string...) はリストを中心に設計されているようです。そもそも ByteStrings と Text を使用する理由は、リストの使用を回避するためです。ほとんどがパックで変換されるため、リストがガベージコレクションされることは理解していますが、これはテキスト/バイトストリングのサポートの半分にすぎませんか? Data.Parsec.Text.Combinatoraと aがあってはいけませんData.Parsec.ByteString.Combinatorか?

0 投票する
2 に答える
74 参照

haskell - Data.ByteString の出力が正しくありません

テキストファイルのリストを引数として取り、各行がファイル内の対応する行間のタブのインターカレーションであるファイルを出力するプログラムを書いています。

すべての文字が ASCII エンコードされていると仮定します

問題は、次のように出力されることです。

それ以外の:

ghci で関数を手動で定義してテストすると、同じロジックが正しく機能します。Data.Text.Lazyまた、 lazy の代わりに使用すると、同じコードが正しく機能しBytestringます。

私のアプローチの何が問題になっていますか?

0 投票する
0 に答える
324 参照

arrays - ByteStringを使用してHaskellで整数配列を出力するには?

定義して入力し、(整数) IOArray を出力するサンプル コード:

明らかに、私の実際のコードは、(別の) 'a' 整数配列を計算するのに時間がかかります。バイト文字列を使用して出力セクションを高速化したいのですが、その方法がわかりません。

0 投票する
1 に答える
146 参照

haskell - Data.Attoparsec.ByteString は「ゼロ コピー」を使用しますか?

たとえば、takeWhileを取ります。内部的にはspanを使用します。

それは入力バイト文字列を参照するだけということですか? おそらくそうではありませんが、もしそうなら、これを達成する方法はありますか?

動機となるユースケースは、メモリにマップし、マップされたメモリを指すバイト文字列を抽出したい大きな (> 2GB) ファイルです。

0 投票する
1 に答える
334 参照

haskell - BS.getLine および CRLF エンディング

を使用するときに行末から \r を削除しようとしていBS.getLineます。私は使用hSetNewlineModeしてみましたが、それは動作しますが、動作しgetLineませんBS.getLine:

他にすべきことはありますか?