問題タブ [haskell]

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 に答える
368 参照

testing - Test.QuickCheck.Batch でリスト関数のテストに既定の型を使用するようにする

任意のリストに対して動作する抽出と呼ばれる関数をテストしています。

たとえば、次のようにテストしたい

しかし、これはコンパイルされません。runまたはの型を指定する必要prop_lenがあります。QuickCheck は を生成できないため[a]、具体的なものを生成する必要があります。だから私は選んだInt

aのタイプで指定する代わりに、QuickCheck を選択する方法はありますrunか?

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

string - シンプルなhaskell文字列管理

Haskellで解決したい小さな問題があります。文字列内のすべてのワイルドカードを変更する関数を1つの具体的なパラメーターに置き換えましょう。この関数の署名は次のとおりです。

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

haskell - Haskell の矢印の説明

矢印を理解するにはどこに行くのが良いでしょうか? 理想的には、モナドに関するワドラーの説明に似た、いくつかの良い例から動機付けられた簡潔な定義のある場所を探しているだけです。

0 投票する
16 に答える
1620 参照

haskell - 関数型プログラミングの機能を実装する言語は?

Lisp は学術界で非常に早い段階で一連の興味深い言語機能を開発しましたが、それらのほとんどは本番環境で普及することはありませんでした。

JavaScript などの一部の言語は、ガベージ コレクションやレキシカル クロージャーなどの基本的な機能を採用しましたが、強力なマクロ、データとしてのコード、カスタム制御構造など、大規模なプログラムの作成方法を実際に変更する可能性のあるすべてのものは、他の関数型言語内に広まっているようですが、重要なプロジェクトに使用するのに実用的な言語はありません。

関数型プログラミング コミュニティは、参照透過性、一般化されたケース式 (つまり、パターン マッチング、C/C# スイッチのように不自由ではない)、カリー化された関数など、(関数型プログラミング自体とは別に) 他にも多くの興味深いアイデアを思いつきました。通常のプログラミングでは明らかに有用であり、既存のプログラミングの実践と簡単に統合できるように思われますが、何らかの理由で、学問の世界で永遠に立ち往生しているようです.

なぜこれらの機能が採用されるのにこれほど苦労するのでしょうか? 「ファーストクラス関数」を中途半端にコピーするのではなく、Lisp から実際に学ぶ現代的で実用的な言語はありますか?それとも、これを不可能にする固有の競合があるのでしょうか?

0 投票する
6 に答える
13063 参照

database - Haskell 用の ORM ツールはありますか?

Haskell を使用してデータベースと対話する最良の方法は何ですか? 私はある種の ORM (Django の ORM、休止状態など) を使用することに慣れており、HAppSでアプリを作成するときに似たようなものがいいでしょう。

編集:実際のデータベースに関する限り、Postgresql MySql と SQLite から自由に選択できるようにしたいと思います。

0 投票する
15 に答える
3862 参照

haskell - 生成的プログラミングのための非C++言語?

C ++はおそらく静的メタプログラミングで最も人気のある言語であり、Javaはそれをサポートしていません

生成プログラミング(プログラムを作成するプログラム)をサポートするC ++以外の言語はありますか?

0 投票する
8 に答える
14066 参照

haskell - if/else 制御ブロックの Haskell コーディング スタイルは適切ですか?

関数型プログラミングに近づくのに役立つことを期待して、Haskell を学んでいます。以前は、C、Java、D など、C に似た構文の言語を主に使用していました。

Wikibooks のチュートリアルでif使用されている/elseコントロール ブロックのコーディング スタイルについて少し質問があります。コードは次のようになります。

このコーディング スタイルは、C ライクな言語で推奨されるスタイルに完全に違反しているため、混乱ifelse ifますelse

elseと同じ列でインデントすると解析エラーになるため、Haskellでは機能しないことはわかっていますif

しかし、次のスタイルはどうでしょうか。上記より分かりやすいと思います。しかし、上記は Wikibooks と、Haskell の公式 Web サイトで「オンラインで入手できる最高のチュートリアル」とマークされている Yet Another Haskell Tutorial で使用されているため、このコーディング スタイルが Haskell プログラムの慣例であるかどうかはわかりません。

では、どのコーディング スタイルがより頻繁に使用されているのか、またはこのコードの別のコーディング スタイルはあるのでしょうか?

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

programming-languages - Haskell初心者:レイアウトを使用するかどうか? 長所と短所は何ですか(例を使用)

Haskells レイアウト機能に関する多くの情報を見つけることができないようです。これは、オプションであることを除いて、pythons の書式設定要件のようなものであることを理解しているためです。このオプションを正しく使用しないようにするにはどうすればよいですか? 言語自体にしっかりとした感触を得るために、それなしで始めるのは良い考えでしょうか?

0 投票する
5 に答える
4640 参照

haskell - Haskell で一般的な memoize 関数を作成するにはどうすればよいですか?

これに関する他の投稿を見たことがありますが、Haskell でこれを行うクリーンな方法はありますか?

第2部として、関数をモナドにせずに行うこともできますか?

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

haskell - 特定のモジュールを含む Haskell パッケージ

Haskell モジュール名は知っていますが、それがどのパッケージで定義されているかわかりません。このモジュールを公開するパッケージなしではコンパイルできないため、これは悪いことです。

具体的には、私が見つけることができないのは Text.Regex ですが、一般的にその問題を解決する方法を知りたいです。