-
Notifications
You must be signed in to change notification settings - Fork 11
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
English - Basic Modules #28
Conversation
I added some comments related to grammar (just for the start of the article), but I'll probably have to learn more about modules myself to make a more substantive review. |
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.
This lesson looks very good to me. The only issue is really with introducing types and typeclasses, which may confuse the reader this early on.
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.
From my perspective, this lesson does everything it needs to.
Sorry for not picking up on some other grammar issues.
en/lessons/basics/modules.md
Outdated
only the type `Identity` (and its constructor) and `id` are exported, `compose` | ||
is completely isolated to the local module scope. |
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.
I think there's a comma splice here.
en/lessons/basics/modules.md
Outdated
a namespace that allow us to aggregate common pieces of functionality and avoid | ||
naming collisions. However, modules are use to build up more complex constructs |
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.
a namespace that allow us to aggregate common pieces of functionality and avoid | |
naming collisions. However, modules are use to build up more complex constructs | |
a namespace that allows us to aggregate common pieces of functionality and avoid | |
naming collisions. However, modules are used to build up more complex constructs |
It required three proof readings to spot this😅.
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.
A couple of changes, one FYI, and we should link to https://wiki.haskell.org/Import at the bottom
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.
I didn't have much to comment on.
en/lessons/basics/modules.md
Outdated
There is only one piece of syntax that ever comes before module syntax (aside | ||
from a haddock module declaration comment, haddock is discussed in a separate | ||
section); that is language extensions. We won't go over what they do here, but | ||
just so you are familiar this is what they look like. |
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.
I understand that the initial issue I opened involved specifying the full structure of a file, but I feel like going into the existence of Haddock may be a bit too clunky here.
If the phrasing "only one piece of syntax" were removed, peculiarities (like Haddock and other pragmas) wouldn't need to be mentioned.
I'm probably still in favour of mentioning language extensions, because they are used even in the basics page of the site, and it would be useful for the reader to understand how to enable them in other contexts.
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.
Agreed. I made changes removed the unnecessary bit about module syntax. I went in more depth about language extensions and overloaded strings in particular to try and assuage any confusion, I would be interested to hear if you think it adds more or less confusion.
en/lessons/basics/modules.md
Outdated
Modules can be listed as a dependency within other modules. It is convention to | ||
have these declarations at the top of a file, below the module declaration. |
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.
Isn't it necessary to put imports before top level declarations because of the parser?
(Sorry I forgot to put this in the review)
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.
Oh yeah, good call, bad wording on my part.
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.
I feel like your explanation of language extensions has appropriate length and covers the right things.
Could you possibly run British English spell check on the document before merging?
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.
Everything looks fine to me.
Rebasing this PR onto development fixed the issue for me locally. I'd say try that. |
5cf6909
to
5676277
Compare
@joelmccracken I was really hoping that would just work |
drat, sorry. I was really hoping, too. this version of the branch is still fine locally, so I cloned it and am gonna investigate further. |
Well, i have the problem occurring on my fork of this project, so, progress? |
Co-authored-by: Hécate Moonlight <Kleidukos@users.noreply.github.com>
Co-authored-by: Hécate Moonlight <Kleidukos@users.noreply.github.com>
5676277
to
20510fd
Compare
Closes #26