-
Notifications
You must be signed in to change notification settings - Fork 72
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: add a walkthrough #868
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for this! It looks very promising. 😄
Here is a curated list of useful books to learn Coq. | ||
|
||
- [Coq'art](https://www.labri.fr/perso/casteran/CoqArt/) (Yves Bertot, Pierre Castéran) is the first book dedicated to the Coq Proof assistant and its underlying theory. Only the french version and the [sources and exercices](https://github.com/coq-community/coq-art) are free. The english version can purchased from the [Springer website](https://link.springer.com/book/10.1007/978-3-662-07964-5) | ||
- [Software Foundations](https://softwarefoundations.cis.upenn.edu/) (Benjamin Pierce et al., 2007, with regular updates), a series of Coq-based textbooks on logic, functional programming and foundations of programming languages , much acclaimed for being accessible to beginners, but rather oriented to computer scientists. | ||
- [Certified Programming with Dependent Types](http://adam.chlipala.net/cpdt/) (Adam Chlipala, 2008), a textbook about practical engineering with Coq, teaches advanced practical tricks and a very specific style of proof. | ||
- [Mathematical Components](https://math-comp.github.io/mcb/) (Assia Mahboubi and Enrico Tassi, 2018), a book that is more oriented towards mathematically inclined users, to dive into Coq with the SSReflect proof language, and the Mathematical Components library. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For our course we also mention:
- I. Sergey. Programs and Proofs: Mechanizing Mathematics with Dependent Types. Lecture Notes.
- G. Smolka. Modeling and Proving in Computational Type Theory Using the Coq Proof Assistant. Lecture Notes.
client/media/install.md
Outdated
|
||
## Opam | ||
|
||
[opam](https://opam.ocaml.org/) is the main OCaml package manager. It is the easyiest way to install Coq and Coq packages. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"easyiest" should be "easiest".
The quickest way to install opam is to run this script. | ||
``` | ||
bash -c "sh <(curl -fsSL https://raw.githubusercontent.com/ocaml/opam/master/shell/install.sh)" | ||
``` | ||
Or for Windows users: | ||
``` | ||
Invoke-Expression "& { $(Invoke-RestMethod https://raw.githubusercontent.com/ocaml/opam/master/shell/install.ps1) }" | ||
``` | ||
Detailed install instructions can be found [here](https://opam.ocaml.org/doc/Install.html). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe it should just point to the opam website? Since it might be updated upstream.
client/media/install.md
Outdated
Detailed install instructions can be found [here](https://opam.ocaml.org/doc/Install.html). | ||
|
||
### opam switch | ||
Central to using opam is the concept of "switch". A switch is an independant installation prefix with its own set of compiler and **pinned** packages. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
independent
client/media/troubleshooting.md
Outdated
|
||
![Troubleshooting menu options](./troubleshooting.png) | ||
|
||
When asking a question on zulip, please try to use minimal examples. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe linkify zulip
?
client/package.json
Outdated
{ | ||
"id": "coq.welcome.books", | ||
"title": "Ressources to get started in the Coq world", | ||
"description": "You can find helpful books, documentations, and tutorials in this page", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"on this page"
client/package.json
Outdated
{ | ||
"id": "coq.welcome.troubleshooting", | ||
"title": "Getting help", | ||
"description": "If you have any questions or are having problem with any of the previous step, please head over to the [Coq zulip chat](https://coq.zulipchat.com/) so we can help you.", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"previous steps"
client/media/install.md
Outdated
Detailed install instructions can be found [here](https://opam.ocaml.org/doc/Install.html). | ||
|
||
### opam switch | ||
Central to using opam is the concept of "switch". A switch is an independant installation prefix with its own set of compiler and **pinned** packages. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Central to using opam is the concept of "switch". A switch is an independant installation prefix with its own set of compiler and **pinned** packages. | |
Central to using opam is the concept of "switch". A switch is an independent installation prefix with its own set of compiler and **pinned** packages. |
Add a walkthrough that fires on first load of the extension with information to reload the page
A command accessible from the Coq menu which shows the manual for Coq.
I think I will probably merge this as is, and then we can improve on it later |
@rtetley I'll review it by the end of the afternoon |
Sorry for the delay. I don't know exactly how the book.md will be displayed, but I think it should be about resources we want people to go to first, e.g. mention the zulip.
|
I think the things that are not ready should only be included once they're ready. For me it seems fine as it currently is for a first version that people can try out and give feedback on. |
I think given the status on all these things at the moment I will merge, and then we can improve upon it. We can discuss this if need be ! |
No description provided.