Skip to content

Conversation

dylan-thinnes
Copy link
Contributor

Got two tickets at the workshop, wrote some quick docs - if there's anything that needs changing, please feel free to request.

Comment on lines +19 to +20
There is more info on deriving instances for extra typeclasses in the [GHC user
manual](https://ghc.gitlab.haskell.org/ghc/doc/users_guide/exts/deriving_extra.html).
Copy link
Collaborator

Choose a reason for hiding this comment

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

GitLab links can change, better to link documentation of a stable GHC release:

Suggested change
There is more info on deriving instances for extra typeclasses in the [GHC user
manual](https://ghc.gitlab.haskell.org/ghc/doc/users_guide/exts/deriving_extra.html).
There is more info on deriving instances for extra typeclasses in the [GHC user manual](https://downloads.haskell.org/ghc/9.12.1/docs/users_guide/exts/deriving_extra.html).

`DerivingFunctor` language extension must be turned on. This can be done with a
pragma at the top of the file, or in build settings.

The `DerivingFunctor` extension is turned on automatically from Haskell2021
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
The `DerivingFunctor` extension is turned on automatically from Haskell2021
The `DerivingFunctor` extension is turned on automatically from GHC2021


When deriving a `Functor` instance for a datatype in Haskell2010, the
`DerivingFunctor` language extension must be turned on. This can be done with a
pragma at the top of the file, or in build settings.
Copy link
Collaborator

Choose a reason for hiding this comment

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

It might be worth mentioning that DeriveTraversable implies DeriveFunctor and also fixes the error.

Any datatype that is exported from an .hs-boot file must be exported from the
corresponding .hs file.

More information on .hs-boot modules is available in [the GHC user manual](https://downloads.haskell.org/ghc/latest/docs/users_guide/separate_compilation.html#how-to-compile-mutually-recursive-modules).
Copy link
Collaborator

Choose a reason for hiding this comment

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

The anchor is gone, I guess it's now

Suggested change
More information on .hs-boot modules is available in [the GHC user manual](https://downloads.haskell.org/ghc/latest/docs/users_guide/separate_compilation.html#how-to-compile-mutually-recursive-modules).
More information on .hs-boot modules is available in [the GHC user manual](https://downloads.haskell.org/ghc/9.12.1/docs/users_guide/separate_compilation.html#mutually-recursive-modules-and-hs-boot-files).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants