問題タブ [ghci]
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.
haskell - Haskell で関数候補を書くのに助けが必要です
こんにちは、 すでにこの件名を処理しているこのスレッドを見てください。このスレッドも興味深いかもしれません。
関数を書こうとしている
数独を与えた
位置 ( type Pos = (Int, Int)
) は、そこに書き込むことができる数字を決定します。たとえば、既に (1,2,4,7,9,x,x) を含む数独の行では、最後の行に既存の数字を書き込むことはできません。行。また、他の問題は、高さと幅をチェックして、数字が複数回発生しないようにすることです(通常の数独ルール)。では、開始方法について何か提案はありますか?
例:数独>候補例 (0,2) [4,8]
haskell - haskell 式のヘルプが必要です (スコープ外コンパイラ エラー)
こんにちは私は次のコードを持っています
そして、コンパイラは、以下はスコープ内にないと言います"chain", "int" "number"
chain、int、number のよく知られた名前ではなく、コンパイラがこれらのコマンドに文句を言うのはなぜですか?
編集
次のパーサーをどこで使用するとしたら、どのように問題を解決しますか?
haskell - 関数変数がスコープ内にありません Haskell
こんにちは、私は次のコードを持っています
しかし、「生成範囲外」と表示されるのはなぜですか?
よろしくダレン
編集私は Test.QuickCheck をインポートしていますが、「生成」が範囲外であるという苦情はまだあります。
編集 2
この関数を quickcheck バージョン 2 で動作させるには、どのように記述しますか? 生成が成功しなかった場所に「unGen」を配置しようとしただけで、quickcheck v 2もインストールしました(cabal install QuickCheck-2.1.0.3)
次のプロパティstdGen->Gen Expr->Expr'
を持つ関数が必要であり、unGen はその機能を提供しているようですが、前述のように、コンパイラはその関数を見つけることができません。この問題に使用できる他の関数はありますか?
haskell - Haskellモジュール:隠された名前とghci
Haskellモジュールから名前のサブセットだけをエクスポートしようとしていますが、ghciを使用すると、非表示の名前にもアクセスできます。
しかし、これをghciで試してみると、次のようになります。
私は何が間違っているのですか?
(編集:その価値のために、私はArchLinuxでghci6.12.3を使用しています)
command-line - ファイルをGHCiに渡し、コマンドラインで出力を受け取りますか?
Python では、次のように言えます。
コマンドラインから受信し、script.py
インラインの出力を受け取ります。HaskellのGHCiでこれを行うことは可能ですか? 基本的に、コンパイルせずに、ユーザーがインタープリターを入力せずに、コマンドラインから Haskell プログラムを実行する方法があるかどうか疑問に思っています。
browser - Haskell インタープリターからブラウザーを開く
私は oeis.org をいじくり回してきましたが、oeis.org (Math.OEIS) へのインターフェイスを提供するモジュールを Hackage で見つけましたが、その結果がコマンド ラインに表示されます。ghci からデフォルトのブラウザで URL を開く方法を誰かが知っているかどうか疑問に思っていました。
ありがとう
haskell - GHCi で改行をマップする
単純な質問ですが、私はそれを理解できないようです。リストがあり、その各要素をそれぞれの行に出力したいと考えています。できます
たとえば、それらをすべてまとめて出力しますが、改行はありません。私の考えはそうすることmap (putStrLn $ show) [1..10]
でしたが、私は[IO()]
. 何かご意見は?
haskell - GHCiで型を定義できないのはなぜですか?
GHCiで型を定義できないのはなぜですか?
haskell - GHCI でインポートされた複数のメソッドの型シグネチャを見つける方法
私はGHCIにロードしたライブラリを使用しています。
関数の名前から、どれを使用すべきかは明らかではありません。私はそれが存在すると確信しており、利用可能な関数の型シグネチャのリストを見たいと思っています。これを行う方法がわかりません。
- モジュール名を入力し、GHCI でタブ補完を使用すると、ライブラリによってエクスポートされたすべての関数のリストを取得できます。
- 問題のライブラリがカバーされていないため、 Hoogleは私には役に立ちません。ただし、Hoogle スタイルの検索は便利です。
- 私はGHCIの を知って
:t
いますが、それは単一の関数でしか機能しないようで、ライブラリによってエクスポートされているすべての関数に対してこれを行いたくありません. - ソースディレクトリで実行
grep -R :: ./*
または同様のことを行うと、明示的な型署名のない関数が省略される場合があります。 - ライブラリには Haddock のドキュメントがありますが、約 1000 の関数が数十のサブモジュールに分散しており、それらすべてを手動で検索するのは面倒でエラーが発生しやすくなっています。
私はどんな方法を試しても構わないと思っていますが、単純で、移植可能で、反復可能な方法を好むのは明らかです。
ライブラリ内のすべてのエクスポートされた関数の型シグネチャを見つける方法はありますか? または、特定の型を含む型シグネチャを持つ関数を見つけるには?
debugging - GHCi を使用した Haskell プログラムの無限ループのデバッグ
私が書いている Haskell プログラムで、初めて無限ループに遭遇しました。コードの非常に特定のセクションに絞り込みましたが、終了しない再帰定義がある場所を正確に特定できないようです。私は GHCi の :trace と :history に漠然と精通していますが、問題は、値に基づいてマップ内の何かを ing することによってマップが取得されるData.Map.Map
という意味で、私のコードの一部の分岐で a の再帰的な変更がかなり含まれていることです。に応じて別のマップで。ここでは詳細は重要ではありませんが、おそらくおわかりのように、これが絡み合った再帰的な方法で発生した場合、私の呼び出し履歴は、 map 、ments 、およびion に関連するさまざまな比較のすべてで完全に行き詰まります。x
adjust
x'
x'
lookup
adjust
insert
無限ループを見つけるためのより効率的な方法を推奨できる人はいますか? たとえば、通話履歴を単一のソース ファイルからの通話に制限すると、非常に役立ちます。