Open lsmor opened 1 year ago
Good idea. I'd definitely be willing (in fact very happy) to include this information if you contribute it. Currently, there is some hint of this info, although it isn't at all detailed. See here: https://haskell-docs.netlify.app/gettingstarted/versions/#installing-packages .
There is also a project in the repo, which could be used as a reference (and updated to follow best practices). One approach you could take would be to heavily comment the .cabal
file from that project, and then import it into the markdown, and add more info beneath it. I've done something similar for haskell files, e.g. at https://haskell-docs.netlify.app/casestudy/chess/ , so that might fit nicely into the structure of the guide. Another (possibly compatible) option might be to add an FAQ on "What is the difference between stack and cabal". But if you have other ideas, that's cool too of course.
Another comment is that I generally have tried in general in the guide to not state information explicitly if I think a user is likely to figure it out easily. So e.g. I personally might not spend a lot of time on the difference between a library and an executable, beyond what a newcomer would likely be confused by.
In the spirit of avoiding overwhelming the user with information, I also chose to only discuss cabal and mention stack only in passing in the Getting Started sections, because a newcomer is unlikely to care about the difference, and choosing cabal means there's one less new word to learn (since I'll need to mention cabal either way). You can see a comment in this vein at the bottom of this section: https://haskell-docs.netlify.app/gettingstarted/versions/?h=stack#managing-software . But mentioning stack more elsewhere in the guide seems fine, so I defer to your judgment.
Ok, with this feedback I'll write a first sketch and work from there ;)
Would a section for web development be considered a case study?
Definitely, although note the existence of this excellent guide: https://lhbg-book.link/
Thanks for the share! Going through the guide myself 😄
It is very common that newcomers don't understand
cabal
norstack
project organization. I propose to create a file where we describe all sections in a.cabal
file, linked to a reference project. The documentation for this should include:stack.yaml
/package.yaml
/cabal.project
/<package-name>.cabal
I can contribute with this If you are willing to include it. The only detail is which section this information should be