問題タブ [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.

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

haskell - GHCiがこのステートメントを奇妙に入力するのはなぜですか?

stackoverflowに関する質問に答えたところ、GHCi(インタラクティブ)がletステートメントで制限が強すぎるタイプを割り当てていることに気付きました。つまり、コードが与えられると、

( https://stackoverflow.com/questions/6281813/maximum-of-list-and-count-of-repeat-maximum-number/6283594#6283594への私の回答のように)f、これをghciに入力すると、次のタイプ情報が得られます

一方、式のタイプを要求するだけで、正しい結果、つまり。が得られますOrd a => [a] -> (a, Int)。ghc7.0.3を使用しています。

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

haskell - GHCi Windows を使用した Haskell コンパイルの問題

WinHugsインタープリターが正常に動作することをテストした haskell アプリケーションを開発しました.. WinGHCiを使用して同じアプリケーションをコンパイルしようとすると、エラーが表示されます

テキストを表示するため\tIOプログラムで使用しました

例 :-putStr "\n \n \t \t Hello ! "

解決策はありますか?

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

haskell - 欠落しているインスタンスエラー、モジュールの読み込み、GHCi

それは別の質問から来ましたが、状況は変わりました。

Parsec関数'parse'とクラス'Stream'の型シグネチャ

私は今import、物事を変えるために何をするのか疑問に思っています。


file:RunParse.hs


(私はghc 7.0.4を使用しています)

ファイルをghciにロードします。

それは私に教えてくれます:



次に、(1)または(2)のいずれかを追加しました。

その後:l RunParse、ロードに成功しました。

次に、(1)と(2)をすべて削除して:l RunParseも、成功しました。

次に、ghciを:q終了し、ghciを再起動します。開始と同じように、ロードに失敗しました。

これはghcのバグですか、それとももっと知っておくべきimportですか?

PS RunParse.hsは、ghc -c --make RunParse.hs(1)と(2)なしで失敗しました。

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

haskell - Haskell:GHCがmainメソッドに対して推測した型が完全ではないのはなぜですか?

たとえば、StackOverflowの質問に答えてDonStewartが書いたコードを見てみましょう。

GHCiにロードします。

mainの型アノテーションが呼び出されているという事実を反映していないのはなぜgetArgs :: IO [String]ですか?

バイナリを実行すると、引数を指定できます。 しかし、GHCiでは、次のことはできません。エラーが発生し<prog> 145ます。このプログラムをGHCiでどのように実行し、議論をしますか。Just 100main 145

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

haskell - GHCを使用してhsファイルをコンパイルする際の-iオプションと、GHCiで同じことを行う方法は何ですか?

OK、-iGHCを使用してコンパイルするときに、コンパイルオプションを使用して、フォルダーをhaskellソースに指定しています。

コンパイル中にこれらのファイルを「ライブラリ」として使用することは理解していますが、GHCiで同じことを行うことはできますか?

私は通常、haskell のパッケージ化された lib egimport Data.Listまたはをインポートし:m +Data.Listます。

試してみましたimport /d/haskell/src-- うまくいきません!

EDIT Haskell doc から: Chapter 2 Using GHCi GHCi モード––makeでは、-iオプションはソース ファイルの検索パスを指定するために使用されますが、標準のバッチ コンパイル モードでは-iオプションはインターフェイス ファイルの検索パスを指定するために使用されます。

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

haskell - Haskell / GHCi - 異なるディレクトリからモジュールをロードする

私の Haskell アプリケーションのディレクトリ構造は次のとおりです。

モジュールはSubsystemモジュールをインポートしUtilsます。このコードを GHCi でハンドテストしたいと思います。

問題は、GHCi が (現在のディレクトリ) で利用可能なモジュールのみを探しているように見えることです'.'。そのため、サブシステム フォルダーにコピーUtils.hsし、手動でテストすることができましたSubsytem.hs。これを行うより良い方法はありますか?たとえば、ディレクトリで GHCi を起動し、 ディレクトリとディレクトリでモジュールを検索させたいとsrcします。GHCiへのモジュールパスを指定できますか?./utils./subsystem

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

haskell - do / while / letブロックで変数の型を出力する方法はありますか?

でネストされた変数の推定型を出力する方法はありますghciか? コードを考えてみましょう。

次に、 のタイプを照会するとよいでしょう。gたとえば、:t f.gが出力されInt -> Intます。

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

haskell - Haskell の型推論の奇妙さ

ghci からの次の出力を見てください。

lookの推定型が の型と異なるのはなぜflip Data.Map.lookupですか?


あなたにいくつかの文脈を与えるために。最初は小さなプログラムがあり、コンパイラエラーが発生する理由を理解しようとしていました:

Ghci の反応:

このバリエーションはうまくコンパイルできることがわかりました (型定義は同じです)。

そして、いくつかの実験の後、 type of をlook明示的に配置すると、最初のバージョンもうまくコンパイルされることが判明しました。

それが私の最初の質問につながります。

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

haskell - プロンプトでモナド?

GHCi プロンプトで任意の Monad インスタンスとインクリメンタルに対話することは可能ですか?

「do」コマンドを対話的に入力できます。

しかし、私が知る限り、すべてが強制的に IO () モナドに入れられます。代わりに任意のモナドとやり取りしたい場合はどうすればよいですか?

コマンドのシーケンス全体をジャイアント内に記述しdo { ... }たり、中置演算子を直接使用したりする必要がありますか? それは問題ありませんが、任意のモナドを「入力」して、一度に 1 行ずつ操作する方がずっと好きです。

可能?

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

haskell - この Haskell は、拡張されたときにあいまいな型について不平を言うのはなぜですか?

以下は True を返します (2147483647 は素数であるため)。

以下のように拡張しようとすると機能しないのはなぜですか?

よくわかりませんが、床の使用から RealFrac が発生するのはなぜですか? floor が RealFrac を取り、Integrals を作成したと思いましたか? さらに、上記の例に不満はありませんでした。そのときと同じように、より多くの整数を入力しているだけです。