diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,8 @@
+# 0.3.2.0
+
+* Added `toListOf` back.
+* Added `to`.
+
 # 0.3.1.0
 
 * Added `LensLike` and `LensLike'`.
diff --git a/microlens.cabal b/microlens.cabal
--- a/microlens.cabal
+++ b/microlens.cabal
@@ -1,5 +1,5 @@
 name:                microlens
-version:             0.3.1.0
+version:             0.3.2.0
 synopsis:            A tiny part of the lens library which you can depend upon
 description:
   This is an extract from <http://hackage.haskell.org/package/lens lens> (with no dependencies). It's not a toy lenses library, unsuitable for “real world”, but merely a small one. It is compatible with lens, and should have same performance. It also has better documentation.
diff --git a/src/Lens/Micro.hs b/src/Lens/Micro.hs
--- a/src/Lens/Micro.hs
+++ b/src/Lens/Micro.hs
@@ -25,10 +25,11 @@
   -- $getters-note
   Getting,
   (^.),
+  to,
 
   -- * Folds (getters returning multiple elements)
   -- $folds-note
-  (^..),
+  (^..), toListOf,
   (^?),
   (^?!),
   folded,
@@ -307,6 +308,35 @@
 
 infixl 8 ^.
 
+{- |
+'to' creates a getter from any function:
+
+@
+a '^.' 'to' f = f a
+@
+
+It's most useful in chains, because it lets you mix lenses and ordinary functions. Suppose you have a record which comes from some third-party library and doesn't have any lens accessors. You want to do something like this:
+
+@
+value ^. _1 . field . at 2
+@
+
+However, @field@ isn't a getter, and you have to do this instead:
+
+@
+field (value ^. _1) ^. at 2
+@
+
+but now @value@ is in the middle and it's hard to read the resulting code. A variant with 'to' is prettier and more readable:
+
+@
+value ^. _1 . to field . at 2
+@
+-}
+to :: (s -> a) -> Getting r s a
+to k f = phantom . f . k
+{-# INLINE to #-}
+
 -- Folds -------------------------------------------------------------------
 
 {- $folds-note
@@ -354,10 +384,17 @@
 [1,2,3,4]
 -}
 (^..) :: s -> Getting (Endo [a]) s a -> [a]
-s ^.. l = foldrOf l (:) [] s
+s ^.. l = toListOf l s
 {-# INLINE (^..) #-}
 
 infixl 8 ^..
+
+{- |
+'toListOf' is a synonym for ('^..').
+-}
+toListOf :: Getting (Endo [a]) s a -> s -> [a]
+toListOf l = foldrOf l (:) []
+{-# INLINE toListOf #-}
 
 {- |
 @s ^? t@ returns the 1st element @t@ returns, or 'Nothing' if @t@ doesn't return anything. It's trivially implemented by passing the 'First' monoid to the getter.
diff --git a/src/Lens/Micro/Internal.hs b/src/Lens/Micro/Internal.hs
--- a/src/Lens/Micro/Internal.hs
+++ b/src/Lens/Micro/Internal.hs
@@ -30,6 +30,7 @@
   sets,
   ( #. ),
   ( .# ),
+  phantom,
   Each(..),
   Index,
   IxValue,
