問題タブ [haskell-platform]

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 投票する
2 に答える
538 参照

haskell - Emacs 23 Haskell コンパイル (Cc Cl) が終わりのないプロセスに入った場合の対処方法は?

ファイルをコンパイルしようとすると.hs、Emacs 23 Haskell モードが終わりのないプロセスに入り、何の反応も示さないことがよくあります。唯一起こることは、カーソルが円に変わり、円の中で点が円を描き始めることです。

この状況を回避するための最善の方法は何ですか? このような状況に陥った場合、どうすれば脱出できますか? 現在、コンピューターを再起動しています。ガイドしてください。

最近、次のコードで発生しました。

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

haskell - / bin / sh:1:./respondPalindromes:見つかりません-これはどういう意味ですか?

私はrespondPalindromes.hsファイルにあるターミナルで以下のコードを実行できますが、emacsで同じものをテストできません。

responsePalindromes=unlines。map(\ xs-> if isPalindrome xs then "palindrome" else "not a palindrome")。isPalindrome
xs =xs==逆
xsmain=相互作用respondPalindromesである行

以下はターミナルの詳細です。

optimight @ optimight:〜$ cat words.txt | runhaskellrespondPalindromes.hsはパリンドローム
ではありませんパリ
ンドロームパリンドローム
パリ
ンドローム

以下はEmacsのhaskellモードの詳細です:

* Main>:load "/home/optimight/respondPalindromes.hs"
[1/1] Mainのコンパイル(/home/optimight/respondPalindromes.hs、インタプリタ)
OK、ロードされたモジュール:Main。
*メイン>:!猫words.txt| ./respondPalindromes.hs
/ bin / sh:1:./respondPalindromes.hs:アクセスが拒否されました
*メイン> :!猫words.txt| ./respondPalindromes
/ bin / sh:1:./respondPalindromes:見つかりません
*メイン>

ディートリッヒエップの答えの後に編集:

*メイン>!:cat words.txt | runhaskell responsePalindromes.hs
:12:1:入力 `!:'の解析エラー

*メイン>猫words.txt| runhaskell responsePalindromes.hs
:13:15:入力`|'の解析エラー
*メイン>

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

generics - 型付き型同型のための標準haskellジェネリックライブラリの使用

Haskellプラットフォームだけで多数の重複するモジュールを持つジェネリックライブラリがいくつかありますが(、、、、sybData.Typeable、非常Data.DataGHC.Generics基本的なジェネリックプログラミングタスクで問題が発生しています。

同じ形状のタイプ間で変換できるようにしたい、つまり、同型タイプ間で多形の型付き変換関数が必要です。これは、基本的に、このペーパーの最後(PDF)で提供されているインデックス付きタイプファミリーについて説明しています。

ボイラープレートを廃棄することではなく、合計と製品の抽象化を中心に新しいライブラリを構築できるようにすることに関心があります。

以下の質問は、GHC.Generic私が必要としているものに最も近いと思った点ですが、他の解決策も歓迎します。


次の2種類は同じ形です

GHC.Genericsを使用してそれらの間で値を変換したいと思います。以下は、すべてのファントムパラメータおよびその他のナンセンスのためにタイプチェックに失敗します。

最終的には、任意の(または他のクラスがこれをサポートできる)インスタンスfromIntegerのポリモーフィックな戻り値を持つそれに類似した関数が必要です。Generic私は次のようなものを探していると思いGHC.Genericsます:

上記で私たちは私が望むすべてを行うことができます:

編集:fこれは、実際には、ネイサンハウエルの関数が以下でどのように機能するように見えるかです。

質問

  1. これは、現在haskellプラットフォームにあるライブラリで行うことができますか?

  2. そうでない場合は、 THに頼らずに、などの既存のderivingメカニズムを活用するライブラリを定義できますか?GenericData

0 投票する
3 に答える
642 参照

haskell - GHC.TypeLitsモジュールを読み込めません

現在のHaskellプラットフォーム2012.2.0.0をインストールしたばかりです。これは、を使用し、base-4.5.0.0モジュールbase-4.5.0.0含みGHC.TypeLitsます。

ただし、ロードしようとするとGHC.TypeLitsghcそれが見つかりません。

どうしたの?GHC.TypeLitsそれが現在のHaskellプラットフォームで利用可能であると仮定するのは間違っていますか?それとも、利用できるようにするために必要な手順をスキップしていますか?

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

haskell - HASKELL - タイプの変更

それを行う関数を作成する必要がありf:: Log->[String] ます (((o, i ,d),s) = [(o, i ,d)]

type Plate = (Pin, Pin, Pin) type Pin = (Char, Int)

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

haskell - ユーザーが何かを入力したときのHaskell..txtファイルの数値と合計

ユーザー入力=6000、input.txt内の数値=5000としましょう。合計は11000になります。画面に表示される数値とファイルに保存されている値は11000に上書きされます。助けてください私、ありがとう

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

haskell - haskell-platformを作成しようとしたときにエラー2を修正するにはどうすればよいですか?

Haskellプラットフォームのソースをここからダウンロードしました:http://www.haskell.org/platform/linux.html、ghcをインストールし、/。configureを実行しました。ただし、sudo makeを実行すると、次のエラーが発生します。

誰かがこれを修正する方法を知っていますか?

Ubuntu12.04.1LTSにインストールしようとしています

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

yesod - yesod devel と入力すると、次のエラーが表示されます: file devel.hs not found

yesod devel と入力すると、次のエラーが表示されます。

エラー: ファイル devel.hs が見つかりません

これを修正するにはどうすればよいですか?

私は Ubuntu 12.04.1 LTS を使用しています。私の ghc バージョンは 7.4.1 で、私の yesod バージョンは 0.10.2.1 です。

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

haskell-platform - Haskell、ATM関数のようなものを作成し、複数のリストを.txtファイルに保存してレコードを取得する必要があります

Haskell の初心者です。このプログラムについて助けが必要です。まず、3 つのアカウントを input.txt に保存します。ファイル内には ["1","steven","4000","12345"]["2","Marcus","5000" のようなものが含まれます。 ,"123456"]["3","Ivan","7000","12345"]アカウント内には、ID、名前、残高、パスワードの 3 つの変数があります。私がやりたいことは:

  1. ユーザーがパスワードを入力すると、プログラムはリスト内のパスワードをユーザーが入力したパスワードと比較し、最終的に特定のレコードを表示します

  2. ユーザーが他のユーザーに送金したい場合。最初に ID を挿入し、2 番目に金額を入力します。最後に、最初のアカウントで金額が減り、2 番目のアカウントで金額が増えます。

  3. 私が直面している問題は、比較、引き出し、送金するために単一のアカウントをどのように読み取ることができるかということです。それを行うより良い方法はありますか?

ありがとう

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

haskell-platform - Haskell の有向グラフ

私は今Haskellで苦労しています。命令型言語や OOP の経験もありますが、Haskell はそれらとは異なるようです。私は Haskell を過小評価しており、新しい言語を学ぶことは私にとって問題ではないと考えています。しかし、多くの新しい概念 (型クラス、ファンクター、アプリカティブ、モノイド、モナド... このLearnyouahaskellの 14 章をすべて読んだ) で 1 週間を過ごした後、それらが私をとても混乱させ、書き始め方がわからないことに気付きました。 Haskell を使ったプログラム。一部の専門家は、Haskell を習得するには数か月かかると言っています。しかし、大きなプロジェクトを完了するのに 2 週間しかありません。

1) それで、私の最初の質問は Haskell を学ぶ方法です

2) Applicative functor を使用する必要があるとき、およびモナドを使用する必要があるときは?

3)私のプロジェクトは、多くのプレゼンテーションに基づいて有向グラフを処理することです:

  • 隣接行列
  • 二分探索木

私は Haskell の初心者なので、Haskell で有向グラフをどこから始めればよいかわかりませんか? 何か提案はありますか?