0

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

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

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

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

  • 隣接行列
  • 二分探索木

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

4

1 に答える 1

3

最初の質問 (Haskell の学習方法) に答えるには、実際にコーディングする必要があると思います。Learn You A Haskell の多くの章を読んだように聞こえますが、それらはあなたの頭を泳がせました。少しゆっくりと進み、さらに重要なことに、コードを入力して評価することでフォローします。あなたは「Haskell でプログラムを書き始める場所がわからない」と言います。実際に例を書いて実行する練習は、コードがどのように機能するか、どこから始めればよいかを理解するために必要なものです。

Monadおそらく、2 番目の質問 (いつ を使用するか、いつ を使用するか)に対する答えの準備が整っていない可能性がApplicativeあります。

特に有向グラフに関する限り、これは優れたリソースです(Amazon のレビューはあまり良くありませんが、Haskell におけるグラフと抽象データ型の概念の優れた入門書だと思います)。

頑張ってください - Haskell は苦労するだけの価値があります!

于 2012-11-20T03:15:12.107 に答える