summaryrefslogtreecommitdiff
path: root/docs/users_guide/exts/poly_kinds.rst
diff options
context:
space:
mode:
authorJan HrĨek <honza.hrk@gmail.com>2020-06-24 15:55:39 +0200
committerMarge Bot <ben+marge-bot@smart-cactus.org>2020-06-28 09:20:22 -0400
commit68530b1cd45629e5a353a37df80195ac54d26ade (patch)
treea6aa929d32d9c1caff4ca57c5ffde238d7c9717a /docs/users_guide/exts/poly_kinds.rst
parent42f797b0ad034a92389e7081aa50ef4ab3434d01 (diff)
downloadhaskell-68530b1cd45629e5a353a37df80195ac54d26ade.tar.gz
Fix duplicated words and typos in comments and user guide
Diffstat (limited to 'docs/users_guide/exts/poly_kinds.rst')
-rw-r--r--docs/users_guide/exts/poly_kinds.rst10
1 files changed, 5 insertions, 5 deletions
diff --git a/docs/users_guide/exts/poly_kinds.rst b/docs/users_guide/exts/poly_kinds.rst
index 68b420034d..39bd6e6f49 100644
--- a/docs/users_guide/exts/poly_kinds.rst
+++ b/docs/users_guide/exts/poly_kinds.rst
@@ -128,7 +128,7 @@ This rule has occasionally-surprising consequences (see
type F2 a -- No right-hand side so F2 :: Type -> Type
The kind-polymorphism from the class declaration makes ``D1``
-kind-polymorphic, but not so ``D2``; and similarly ``F1``, ``F1``.
+kind-polymorphic, but not so ``D2``; and similarly ``F1``, ``F2``.
.. _inferring-variable-order:
@@ -276,7 +276,7 @@ signature" for a type constructor? These are the forms:
unless :extension:`UnliftedNewtypes` is enabled.
With :extension:`UnliftedNewtypes`, the type constructor
only has a CUSK if a kind signature is present. As with a datatype
- with a top-level ``::``, all kind variables must introduced after
+ with a top-level ``::``, all kind variables introduced after
the ``::`` must be explicitly quantified ::
{-# LANGUAGE UnliftedNewtypes #-}
@@ -613,7 +613,7 @@ right hand side of ``S``::
type S a b = <rhs> :: k -> k
The reason for this exception is that there may be no other way to bind ``k``.
-For example, suppose we wanted ``S`` to have the the following kind with an
+For example, suppose we wanted ``S`` to have the following kind with an
*invisible* parameter ``k``::
S :: forall k. Type -> Type -> k -> k
@@ -681,7 +681,7 @@ What is the kind of ``ProxyKVis``? One might say
``forall k. Type -> k -> Type``, but this isn't quite right, since this would
allow incorrect things like ``ProxyKVis Bool Int``, which should be rejected
due to the fact that ``Int`` is not of kind ``Bool``. The key observation is that
-the kind of the second argument *depend* on the first argument. GHC indicates
+the kind of the second argument *depends* on the first argument. GHC indicates
this dependency in the syntax that it gives for the kind of ``ProxyKVis``: ::
ProxyKVis :: forall k -> k -> Type
@@ -689,7 +689,7 @@ this dependency in the syntax that it gives for the kind of ``ProxyKVis``: ::
This kind is similar to the kind of ``ProxyKInvis``, but with a key difference:
the type variables quantified by the ``forall`` are followed by an arrow
(``->``), not a dot (``.``). This is a visible, dependent quantifier. It is
-visible in that it the user must pass in a type for ``k`` explicitly, and it is
+visible in that the user must pass in a type for ``k`` explicitly, and it is
dependent in the sense that ``k`` appears later in the kind of ``ProxyKVis``.
As a counterpart, the ``k`` binder in ``forall k. k -> Type`` can be thought
of as an *invisible*, dependent quantifier.