Idrisチュートリアル、Agdaチュートリアル、および他の多くのチュートリアルスタイルのペーパーと、まだ学習していないことへの終わりのない参照を含む入門資料があります。私はこれらすべての真っ只中にいるようなもので、ほとんどの場合、数学表記と新しい用語が説明なしに突然現れることに固執しています。おそらく私の数学は最悪です:-)
依存型プログラミングにアプローチするための統制のとれた方法はありますか?Haskellを学びたいときのように、「自分自身にHaskellを教えて」から始め、Scalaを学びたいときは、Oderskyの本から始めます。Rubyの場合、変異したバグを含む奇妙なチュートリアルを読みます。しかし、私は彼らの本でアグダやイドリスを始めることはできません。彼らは私の頭上にあります。私はCoqを試してみましたが、そのすべてを証明するスタイルで立ち往生しました。アグダは巨大な数学のバックグラウンドを必要とし、イドリスは、まあ、今はそれを残しましょう!
私は静的型システムをよく理解しています。私はScalaにある程度精通しており、必要に応じてHaskellを使用できます。私は関数型パラダイムを理解し、それを日常的に使用しています。代数的データ型とGADT(実際には非常にスムーズに)を理解し、最近ラムダキューブを理解することができました。しかし、私は数学と論理の部分が不足しています。