How to learn agda
Asked Answered
S

3

32

I am trying to learn agda. However, I got a problem. All the tutorials which I found on agda wiki are too complex for me and cover different aspects of programming. After parallel reading of 3 tutorials on agda I was able to write simple proofs but I still don't have enough knowledge to use it for real word algorithm correctness.

Can you recommend me any tutorials on the subject? Something similar to Learn Yourself a Haskell but for Agda.

Skeg answered 26/2, 2012 at 18:20 Comment(2)
related question (asked later): #13498365Paradigm
not Agda but Idris, but still quite relevant: vimeo.com/117221082Tommietommy
T
23

When I started learning Agda about a year ago I think I tried all available tutorials and each taught me something new.

You should probably give Coq a try, because it has a larger user base and there are two nice books available for it:

  1. Coq'Art - slightly dated, but beginner friendly
  2. Certified Programming with Dependent Types

Software Foundations is also very nice.

The nice thing is that the theories Agda and Coq are based on are somewhat similar, so many examples can be translated from one to another. Programming in Martin-Löf's Type Theory is a really nice and readable introduction to the dependent type theory, it can clear some things for you.

It would help to know what do you mean by "real world algorithms". Many example developments are described in papers which mention Agda.

Twoway answered 26/2, 2012 at 19:53 Comment(0)
S
20

Conor McBride gave a great series of lectures last year on dependently-typed programming using Agda. It's a good place to go if you want a break from pouring through terse tutorials on the topic. I believe there are also accompanying exercises.

Sixgun answered 5/11, 2012 at 15:13 Comment(1)
The link is broken, but there's a new lecture series by Conor McBride from 2017/18.Karlotte
D
2

Here are some additional resources as of 2022.

  1. Programming Language Foundations in Agda: This book was written in the style of Software Foundations but using Agda instead of Coq. The author taught a course using Software Foundations and wrote a blurb explaining why they decided to rewrite the book in Agda.

  2. Notes on PLFA: These are a set of notes that serve as commentary to PLFA. The author also wrote the well-regarded book...

  3. Logic and Computation Intertwined: While not an Agda book per se, it introduces proof assistants first through the construction of your own small proof assistant (written in Racket). The book also contains a section on Agda.

  4. Learn You An Agda: A shorter text but helpful to skim through.

Dynameter answered 16/7, 2022 at 5:37 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.