From 68530b1cd45629e5a353a37df80195ac54d26ade Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Hr=C4=8Dek?= Date: Wed, 24 Jun 2020 15:55:39 +0200 Subject: Fix duplicated words and typos in comments and user guide --- docs/users_guide/exts/poly_kinds.rst | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'docs/users_guide/exts/poly_kinds.rst') 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 = :: 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. -- cgit v1.2.1