diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,9 @@
 # CHANGELOG
 
+## 1.0.1
+### Changed
+* Grammar nazi fixed horrible bugs
+
 ## 1.0.0
 ### Changed
 * type family `Contains` renamed to `HGetable` to not clash names with
diff --git a/hset.cabal b/hset.cabal
--- a/hset.cabal
+++ b/hset.cabal
@@ -1,5 +1,5 @@
 name:                hset
-version:             1.0.0
+version:             1.0.1
 synopsis:            Primitive heterogenous read-only set
 license:             BSD3
 license-file:        LICENSE
diff --git a/src/Data/HSet.hs b/src/Data/HSet.hs
--- a/src/Data/HSet.hs
+++ b/src/Data/HSet.hs
@@ -19,7 +19,7 @@
 import Control.Applicative
 #endif
 
-{- | Heterogeneous set (list) of elements with unique types. Usefull
+{- | Heterogeneous set (list) of elements with unique types. Useful
 with MonadReader.
 
 >>> let x = HSCons (10 :: Int) $ HSCons (20 :: Double) HSNil
@@ -32,7 +32,7 @@
 >>> hget x :: Double
 20.0
 
-Note how 'hget' just takes specific element from list of uniqly typed
+Note that 'hget' takes specific element from list of uniquely typed
 elements depending on what type is required to be returned.
 
 -}
@@ -64,7 +64,7 @@
 
 -- | Typeclass for sets and elements.
 class (i ~ (Index e els)) => HGet els e i where
-  -- | Get any data from HSet for you
+  -- | Gets any data from HSet for you
   hget :: HSet els -> e
 
 instance HGet (e ': els) e 'Z where
@@ -73,8 +73,8 @@
 instance (i ~ (Index e els), ('S i) ~ (Index e (e1 ': els)), HGet els e i) => HGet (e1 ': els) e ('S i) where
   hget (HSCons _ els) = hget els
 
--- | Helper typefamily to derive that second argument contained in
--- list of first argument and we can perform 'hget' from set.
+-- | Enables deriving of the fact that 'e' is contained within 'els' and it's
+-- safe to say that 'hget' can be performed on this particular pair.
 type HGetable els e = HGet els e (Index e els)
 
 hask :: (MonadReader (HSet els) m, HGetable els e) => m e
