Skip to content
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

Merged
merged 3 commits into from
Sep 2, 2024
Merged

feat: add a walkthrough #868

merged 3 commits into from
Sep 2, 2024

Conversation

rtetley
Copy link
Collaborator

@rtetley rtetley commented Aug 13, 2024

No description provided.

Copy link

@TheoWinterhalter TheoWinterhalter left a 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. 😄

Comment on lines +3 to +8
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.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.


## Opam

[opam](https://opam.ocaml.org/) is the main OCaml package manager. It is the easyiest way to install Coq and Coq packages.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"easyiest" should be "easiest".

Comment on lines +12 to +20
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).

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.

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.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

independent

client/media/install.md Show resolved Hide resolved

![Troubleshooting menu options](./troubleshooting.png)

When asking a question on zulip, please try to use minimal examples.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe linkify zulip?

{
"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",

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"on this page"

{
"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.",

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"previous steps"

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.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
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.
@rtetley rtetley marked this pull request as ready for review August 29, 2024 06:17
@rtetley
Copy link
Collaborator Author

rtetley commented Aug 29, 2024

I think I will probably merge this as is, and then we can improve on it later

@thomas-lamiaux
Copy link
Contributor

@rtetley I'll review it by the end of the afternoon

@thomas-lamiaux
Copy link
Contributor

thomas-lamiaux commented Aug 31, 2024

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.

  1. Basic links:

    • Links towards short and nice intros games that we currently don't have 😓 (ideally even downloaded with vscode ?)
    • Links towards the tutorials https://coq.inria.fr/platform-docs/ (though it is currently limited)
    • Software foundation, which is a big intro game for Coq for CS ?
    • Links towards the zulip to ask questions (and potentially also discourse and the stack exchange, tough I prefer zulip)
  2. More resources:

    • potentially outdated books
    • refman etc...

@TheoWinterhalter
Copy link

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.

@rtetley
Copy link
Collaborator Author

rtetley commented Sep 2, 2024

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 !

@rtetley rtetley merged commit 6f0ebb2 into main Sep 2, 2024
24 checks passed
@rtetley rtetley deleted the walkthrough branch September 6, 2024 08:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants