diff --git a/State/L.hs b/State/L.hs
deleted file mode 100644
--- a/State/L.hs
+++ /dev/null
@@ -1,79 +0,0 @@
-{-# LANGUAGE Safe #-}
-
-{-# LANGUAGE ConstrainedClassMethods #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveFoldable #-}
-{-# LANGUAGE DeriveFunctor #-}
-{-# LANGUAGE DeriveGeneric #-}
-{-# LANGUAGE DeriveTraversable #-}
-{-# LANGUAGE EmptyDataDecls #-}
-{-# LANGUAGE ExistentialQuantification #-}
-{-# LANGUAGE FlexibleContexts #-}
-{-# LANGUAGE FlexibleInstances #-}
-{-# LANGUAGE FunctionalDependencies #-}
-{-# LANGUAGE ImplicitParams #-}
-{-# LANGUAGE KindSignatures #-}
-{-# LANGUAGE LiberalTypeSynonyms #-}
-{-# LANGUAGE MagicHash #-}
-{-# LANGUAGE MultiParamTypeClasses #-}
-{-# LANGUAGE PackageImports #-}
-{-# LANGUAGE ParallelListComp #-}
-{-# LANGUAGE PatternGuards #-}
-{-# LANGUAGE PolymorphicComponents #-}
-{-# LANGUAGE PostfixOperators #-}
-{-# LANGUAGE RankNTypes #-}
-{-# LANGUAGE ScopedTypeVariables #-}
-{-# LANGUAGE StandaloneDeriving #-}
-{-# LANGUAGE TypeOperators #-}
-{-# LANGUAGE TypeSynonymInstances #-}
-{-# LANGUAGE UnboxedTuples #-}
-{-# LANGUAGE UnicodeSyntax #-}
-module L where
-import Control.Applicative
-import Control.Arrow
-import Control.Monad
-import Control.Monad.Cont
-import Control.Monad.Identity
-import Control.Monad.Instances
-import Control.Monad.Reader
-import Control.Monad.ST.Safe
-import Control.Monad.State
-import Control.Monad.Writer
-import Data.Bits
-import Data.Bool
-import Data.Char
-import Data.Complex
-import Data.Dynamic
-import Data.Either
-import Data.Eq
-import Data.Function
-import Data.Int
-import Data.List
-import Data.Maybe
-import Data.Monoid
-import Data.Ord
-import Data.Ratio
-import Data.STRef
-import Data.Tree
-import Data.Tuple
-import Data.Typeable
-import Data.Word
-import Numeric
-import ShowFun
-import System.Random
-import Lambdabot.Plugin.Haskell.Eval.Trusted
-import Text.PrettyPrint.HughesPJ hiding (empty)
-import Text.Printf
-import qualified Data.ByteString as BS
-import qualified Data.ByteString.Char8 as BSC
-import qualified Data.ByteString.Lazy as BSL
-import qualified Data.ByteString.Lazy.Char8 as BSLC
-import qualified Data.Foldable
-import qualified Data.IntMap as IM
-import qualified Data.IntSet as IS
-import qualified Data.Map as M
-import qualified Data.Sequence
-import qualified Data.Set as S
-import qualified Data.Traversable
-
-{-# LINE 1 "<local>" #-}
diff --git a/State/Pristine.hs b/State/Pristine.hs
deleted file mode 100644
--- a/State/Pristine.hs
+++ /dev/null
@@ -1,79 +0,0 @@
-{-# LANGUAGE Safe #-}
-
-{-# LANGUAGE ConstrainedClassMethods #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-{-# LANGUAGE DeriveFoldable #-}
-{-# LANGUAGE DeriveFunctor #-}
-{-# LANGUAGE DeriveGeneric #-}
-{-# LANGUAGE DeriveTraversable #-}
-{-# LANGUAGE EmptyDataDecls #-}
-{-# LANGUAGE ExistentialQuantification #-}
-{-# LANGUAGE FlexibleContexts #-}
-{-# LANGUAGE FlexibleInstances #-}
-{-# LANGUAGE FunctionalDependencies #-}
-{-# LANGUAGE ImplicitParams #-}
-{-# LANGUAGE KindSignatures #-}
-{-# LANGUAGE LiberalTypeSynonyms #-}
-{-# LANGUAGE MagicHash #-}
-{-# LANGUAGE MultiParamTypeClasses #-}
-{-# LANGUAGE PackageImports #-}
-{-# LANGUAGE ParallelListComp #-}
-{-# LANGUAGE PatternGuards #-}
-{-# LANGUAGE PolymorphicComponents #-}
-{-# LANGUAGE PostfixOperators #-}
-{-# LANGUAGE RankNTypes #-}
-{-# LANGUAGE ScopedTypeVariables #-}
-{-# LANGUAGE StandaloneDeriving #-}
-{-# LANGUAGE TypeOperators #-}
-{-# LANGUAGE TypeSynonymInstances #-}
-{-# LANGUAGE UnboxedTuples #-}
-{-# LANGUAGE UnicodeSyntax #-}
-module L where
-import Control.Applicative
-import Control.Arrow
-import Control.Monad
-import Control.Monad.Cont
-import Control.Monad.Identity
-import Control.Monad.Instances
-import Control.Monad.Reader
-import Control.Monad.ST.Safe
-import Control.Monad.State
-import Control.Monad.Writer
-import Data.Bits
-import Data.Bool
-import Data.Char
-import Data.Complex
-import Data.Dynamic
-import Data.Either
-import Data.Eq
-import Data.Function
-import Data.Int
-import Data.List
-import Data.Maybe
-import Data.Monoid
-import Data.Ord
-import Data.Ratio
-import Data.STRef
-import Data.Tree
-import Data.Tuple
-import Data.Typeable
-import Data.Word
-import Numeric
-import ShowFun
-import System.Random
-import Lambdabot.Plugin.Haskell.Eval.Trusted
-import Text.PrettyPrint.HughesPJ hiding (empty)
-import Text.Printf
-import qualified Data.ByteString as BS
-import qualified Data.ByteString.Char8 as BSC
-import qualified Data.ByteString.Lazy as BSL
-import qualified Data.ByteString.Lazy.Char8 as BSLC
-import qualified Data.Foldable
-import qualified Data.IntMap as IM
-import qualified Data.IntSet as IS
-import qualified Data.Map as M
-import qualified Data.Sequence
-import qualified Data.Set as S
-import qualified Data.Traversable
-
-{-# LINE 1 "<local>" #-}
diff --git a/State/Pristine.hs.706 b/State/Pristine.hs.706
new file mode 100644
--- /dev/null
+++ b/State/Pristine.hs.706
@@ -0,0 +1,79 @@
+{-# LANGUAGE Safe #-}
+
+{-# LANGUAGE ConstrainedClassMethods #-}
+{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveFoldable #-}
+{-# LANGUAGE DeriveFunctor #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE DeriveTraversable #-}
+{-# LANGUAGE EmptyDataDecls #-}
+{-# LANGUAGE ExistentialQuantification #-}
+{-# LANGUAGE FlexibleContexts #-}
+{-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE FunctionalDependencies #-}
+{-# LANGUAGE ImplicitParams #-}
+{-# LANGUAGE KindSignatures #-}
+{-# LANGUAGE LiberalTypeSynonyms #-}
+{-# LANGUAGE MagicHash #-}
+{-# LANGUAGE MultiParamTypeClasses #-}
+{-# LANGUAGE PackageImports #-}
+{-# LANGUAGE ParallelListComp #-}
+{-# LANGUAGE PatternGuards #-}
+{-# LANGUAGE PolymorphicComponents #-}
+{-# LANGUAGE PostfixOperators #-}
+{-# LANGUAGE RankNTypes #-}
+{-# LANGUAGE ScopedTypeVariables #-}
+{-# LANGUAGE StandaloneDeriving #-}
+{-# LANGUAGE TypeOperators #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+{-# LANGUAGE UnboxedTuples #-}
+{-# LANGUAGE UnicodeSyntax #-}
+module L where
+import Control.Applicative
+import Control.Arrow
+import Control.Monad
+import Control.Monad.Cont
+import Control.Monad.Identity
+import Control.Monad.Instances
+import Control.Monad.Reader
+import Control.Monad.ST.Safe
+import Control.Monad.State
+import Control.Monad.Writer
+import Data.Bits
+import Data.Bool
+import Data.Char
+import Data.Complex
+import Data.Dynamic
+import Data.Either
+import Data.Eq
+import Data.Function
+import Data.Int
+import Data.List
+import Data.Maybe
+import Data.Monoid
+import Data.Ord
+import Data.Ratio
+import Data.STRef
+import Data.Tree
+import Data.Tuple
+import Data.Typeable
+import Data.Word
+import Numeric
+import ShowFun
+import System.Random
+import Lambdabot.Plugin.Haskell.Eval.Trusted
+import Text.PrettyPrint.HughesPJ hiding (empty)
+import Text.Printf
+import qualified Data.ByteString as BS
+import qualified Data.ByteString.Char8 as BSC
+import qualified Data.ByteString.Lazy as BSL
+import qualified Data.ByteString.Lazy.Char8 as BSLC
+import qualified Data.Foldable
+import qualified Data.IntMap as IM
+import qualified Data.IntSet as IS
+import qualified Data.Map as M
+import qualified Data.Sequence
+import qualified Data.Set as S
+import qualified Data.Traversable
+
+{-# LINE 1 "<local>" #-}
diff --git a/State/Pristine.hs.708 b/State/Pristine.hs.708
new file mode 100644
--- /dev/null
+++ b/State/Pristine.hs.708
@@ -0,0 +1,78 @@
+{-# LANGUAGE Safe #-}
+
+{-# LANGUAGE ConstrainedClassMethods #-}
+{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveFoldable #-}
+{-# LANGUAGE DeriveFunctor #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE DeriveTraversable #-}
+{-# LANGUAGE EmptyDataDecls #-}
+{-# LANGUAGE ExistentialQuantification #-}
+{-# LANGUAGE FlexibleContexts #-}
+{-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE FunctionalDependencies #-}
+{-# LANGUAGE ImplicitParams #-}
+{-# LANGUAGE KindSignatures #-}
+{-# LANGUAGE LiberalTypeSynonyms #-}
+{-# LANGUAGE MagicHash #-}
+{-# LANGUAGE MultiParamTypeClasses #-}
+{-# LANGUAGE PackageImports #-}
+{-# LANGUAGE ParallelListComp #-}
+{-# LANGUAGE PatternGuards #-}
+{-# LANGUAGE PolymorphicComponents #-}
+{-# LANGUAGE PostfixOperators #-}
+{-# LANGUAGE RankNTypes #-}
+{-# LANGUAGE ScopedTypeVariables #-}
+{-# LANGUAGE StandaloneDeriving #-}
+{-# LANGUAGE TypeOperators #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+{-# LANGUAGE UnboxedTuples #-}
+{-# LANGUAGE UnicodeSyntax #-}
+module L where
+import Control.Applicative
+import Control.Arrow
+import Control.Monad
+import Control.Monad.Cont
+import Control.Monad.Identity
+import Control.Monad.Reader
+import Control.Monad.ST.Safe
+import Control.Monad.State
+import Control.Monad.Writer
+import Data.Bits
+import Data.Bool
+import Data.Char
+import Data.Complex
+import Data.Dynamic
+import Data.Either
+import Data.Eq
+import Data.Function
+import Data.Int
+import Data.List
+import Data.Maybe
+import Data.Monoid
+import Data.Ord
+import Data.Ratio
+import Data.STRef
+import Data.Tree
+import Data.Tuple
+import Data.Typeable
+import Data.Word
+import Numeric
+import ShowFun
+import System.Random
+import Lambdabot.Plugin.Haskell.Eval.Trusted
+import Text.PrettyPrint.HughesPJ hiding (empty)
+import Text.Printf
+import qualified Data.ByteString as BS
+import qualified Data.ByteString.Char8 as BSC
+import qualified Data.ByteString.Lazy as BSL
+import qualified Data.ByteString.Lazy.Char8 as BSLC
+import qualified Data.Foldable
+import qualified Data.IntMap as IM
+import qualified Data.IntSet as IS
+import qualified Data.Map as M
+import qualified Data.Sequence
+import qualified Data.Set as S
+import qualified Data.Traversable
+
+{-# LINE 1 "<local>" #-}
diff --git a/State/Pristine.hs.default b/State/Pristine.hs.default
new file mode 100644
--- /dev/null
+++ b/State/Pristine.hs.default
@@ -0,0 +1,169 @@
+{-# LANGUAGE Safe #-}
+
+{-# LANGUAGE BangPatterns #-}
+{-# LANGUAGE ConstrainedClassMethods #-}
+{-# LANGUAGE ConstraintKinds #-}
+{-# LANGUAGE DataKinds #-}
+{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveFoldable #-}
+{-# LANGUAGE DeriveFunctor #-}
+{-# LANGUAGE DeriveGeneric #-}
+{-# LANGUAGE DeriveTraversable #-}
+{-# LANGUAGE EmptyCase #-}
+{-# LANGUAGE EmptyDataDecls #-}
+{-# LANGUAGE ExistentialQuantification #-}
+{-# LANGUAGE FlexibleContexts #-}
+{-# LANGUAGE FlexibleInstances #-}
+{-# LANGUAGE FunctionalDependencies #-}
+{-# LANGUAGE GADTs #-}
+{-# LANGUAGE ImplicitParams #-}
+{-# LANGUAGE KindSignatures #-}
+{-# LANGUAGE LiberalTypeSynonyms #-}
+{-# LANGUAGE MagicHash #-}
+{-# LANGUAGE MultiParamTypeClasses #-}
+{-# LANGUAGE NoMonomorphismRestriction #-}
+{-# LANGUAGE PackageImports #-}
+{-# LANGUAGE ParallelListComp #-}
+{-# LANGUAGE PatternGuards #-}
+{-# LANGUAGE PolyKinds #-}
+{-# LANGUAGE PolymorphicComponents #-}
+{-# LANGUAGE PostfixOperators #-}
+{-# LANGUAGE RankNTypes #-}
+{-# LANGUAGE ScopedTypeVariables #-}
+{-# LANGUAGE StandaloneDeriving #-}
+{-# LANGUAGE TupleSections #-}
+{-# LANGUAGE TypeFamilies #-}
+{-# LANGUAGE TypeOperators #-}
+{-# LANGUAGE TypeSynonymInstances #-}
+{-# LANGUAGE UnboxedTuples #-}
+{-# LANGUAGE UndecidableInstances #-}
+{-# LANGUAGE UnicodeSyntax #-}
+{-# LANGUAGE ViewPatterns #-}
+
+module L where
+-- TODO: unordered-containters, text, vector (+ lenses thereof)
+import Control.Applicative
+import Control.Arrow
+import Control.Category (Category)
+import qualified Control.Category as C
+import Control.Exception
+import Control.Exception.Lens
+import Control.Lens hiding (index, indices)
+import qualified Control.Lens as Lens
+import qualified Control.Lens
+import Control.Monad
+import Control.Monad.Cont
+import Control.Monad.Except
+import Control.Monad.Error.Lens
+import Control.Monad.Fix
+import Control.Monad.Identity
+-- import Control.Monad.Instances
+import Control.Monad.RWS
+import Control.Monad.Reader
+import Control.Monad.ST
+import Control.Monad.State
+import Control.Monad.Writer
+-- import Control.Parallel
+-- import Control.Parallel.Strategies
+-- import Control.Parallel.Strategies.Lens
+import Data.Array
+import Data.Array.Lens
+import Data.Bits
+import Data.Bits.Lens
+import Data.Bool
+import Data.Char
+import Data.Complex
+import Data.Complex.Lens
+import Data.Data
+import Data.Data.Lens
+import Data.Default
+import Data.Dynamic
+import Data.Dynamic.Lens
+import Data.Either
+import Data.Eq
+import Data.Fixed
+import Data.Function
+import Data.Graph
+import Data.Int
+import Data.Ix
+import Data.List
+import Data.List.Lens
+import Data.List.Split
+-- import Data.List.Split.Lens
+import Data.Maybe
+import Data.Monoid
+-- import Data.Number.BigFloat
+import Data.Number.CReal
+import Data.Number.Interval
+import Data.Number.Natural
+import Data.Number.Symbolic hiding (var)
+import qualified Data.Number.Symbolic
+import qualified Data.Number.Symbolic as Sym
+import Data.Ord
+import Data.Ratio
+import Data.STRef
+import Data.Tree
+import Data.Tree.Lens
+import Data.Tuple
+import Data.Typeable
+import Data.Typeable.Lens
+import Data.Default
+-- import Data.Void
+-- import Data.Universe
+import Data.Word
+import Debug.SimpleReflect
+import Numeric
+-- import Numeric.AD
+-- import Numeric.AD.Types
+import Numeric.Lens
+import ShowFun
+import System.Random hiding (split)
+import qualified System.Random
+import qualified System.Random as R
+import Lambdabot.Plugin.Haskell.Eval.Trusted hiding ((.&.))
+import Text.PrettyPrint.HughesPJ hiding (empty, first, (<>))
+import qualified Text.PrettyPrint.HughesPJ
+import Text.Printf
+import qualified Data.ByteString as BS
+import qualified Data.ByteString.Char8 as BSC
+import qualified Data.ByteString.Lazy as BSL
+import qualified Data.ByteString.Lazy.Char8 as BSLC
+import Data.ByteString.Lens
+import qualified Data.Foldable as F
+import Data.Foldable (Foldable, fold, foldMap)
+import qualified Data.IntMap as IM
+import qualified Data.IntSet as IS
+import qualified Data.Map as M
+import qualified Data.Sequence as Seq
+import Data.Sequence.Lens
+import qualified Data.Set as S
+import Data.Set.Lens
+import qualified Data.Traversable as T
+-- import Math.NumberTheory.GCD
+-- import Math.NumberTheory.Logarithms
+-- import Math.NumberTheory.Moduli
+-- import Math.NumberTheory.MoebiusInversion
+-- import Math.NumberTheory.Powers
+-- import Math.NumberTheory.Primes
+-- import Math.NumberTheory.Primes.Factorisation.Certified
+-- import Math.NumberTheory.Primes.Testing.Certificates
+
+default ((),Integer,Double)
+
+infixl 0 `asTypeIn`
+asTypeIn :: a -> (a -> b) -> a
+x `asTypeIn` _ = x
+
+infixl 0 `asAppliedTo`
+asAppliedTo :: (a -> b) -> a -> a -> b
+asAppliedTo f _ = f
+
+-- FIXME: should just import Mu from elsewhere and avoid duplicating
+-- the instances/definitions
+cata :: Functor f => (f a -> a) -> Mu f -> a
+cata f = f . fmap (cata f) . out
+
+-- TODO: source from a package? define in terms of lens' Equality?
+-- data Is a b where Refl :: Is a a
+
+{-# LINE 1 "<local>" #-}
diff --git a/State/source b/State/source
--- a/State/source
+++ b/State/source
@@ -83,8 +83,8 @@
 mapM_ f as = sequence_ (map f as)
 
 guard
-guard True  = return ()
-guard False = mzero
+guard True  = pure ()
+guard False = empty
 
 forM
 forM = flip mapM
@@ -1211,8 +1211,7 @@
     (**), logBase       :: a -> a -> a
 
 Num
--- Doesn't require (Eq a, Show a) in newer GHC.
-class (Eq a, Show a) => Num a where
+class Num a where
     (+), (-), (*)       :: a -> a -> a
     negate, abs, signum :: a -> a
     fromInteger         :: Integer -> a
@@ -1254,12 +1253,19 @@
     (<|>) :: f a -> f a -> f a
 
 Monad
-class Monad m where
-    (>>=)  :: forall a b. m a -> (a -> m b) -> m b
-    (>>)   :: forall a b. m a -> m b -> m b
+class Applicative m => Monad m where
+    -- Note: Applicative wasn't a superclass before GHC 7.10
+    (>>=)  :: m a -> (a -> m b) -> m b
+    (>>)   :: m a -> m b -> m b
     return :: a -> m a
     fail   :: String -> m a
 
+MonadPlus
+class Alternative m => MonadPlus m where
+    -- Note: Alternative wasn't a superclass before GHC 7.10
+    mzero :: m a
+    mplus :: m a -> m a -> m a
+
 Monoid
 class Monoid a where
     mempty  :: a
@@ -1382,6 +1388,14 @@
     sequenceA :: Applicative f => t (f a) -> f (t a)
     mapM      :: Monad m => (a -> m b) -> t a -> m (t b)
     sequence  :: Monad m => t (m a) -> m (t a)
+
+traverse_
+traverse_ h xs = foldr (\fx fxs -> h fx *> fxs) (pure ())
+--OR
+traverse_ h xs = traverse h xs *> pure ()
+
+map_
+map_ = flip traverse_
 
 IO fmap
 fmap f x = x >>= (return . f)
diff --git a/lambdabot.cabal b/lambdabot.cabal
--- a/lambdabot.cabal
+++ b/lambdabot.cabal
@@ -1,5 +1,5 @@
 name:                   lambdabot
-version:                5.0.1
+version:                5.0.2
 
 license:                GPL
 license-file:           LICENSE
@@ -32,10 +32,10 @@
                         Changelog
                         README.md
 
-data-files:             scripts/online.rc,
-                        State/haddock,
-                        State/L.hs,
-                        State/Pristine.hs,
+data-files:             State/haddock,
+                        State/Pristine.hs.706,
+                        State/Pristine.hs.708,
+                        State/Pristine.hs.default,
                         State/source,
                         State/vixen
 
@@ -50,7 +50,7 @@
   ghc-options:          -Wall -threaded
   build-depends:        base                         >= 3 && < 5,
                         lambdabot-core               >= 5.0.1 && < 5.1,
-                        lambdabot-haskell-plugins    >= 5.0.1 && < 5.1,
+                        lambdabot-haskell-plugins    >= 5.0.2 && < 5.1,
                         lambdabot-irc-plugins        >= 5.0.1 && < 5.1,
                         lambdabot-misc-plugins       >= 5.0.1 && < 5.1,
                         lambdabot-novelty-plugins    >= 5.0.1 && < 5.1,
diff --git a/scripts/online.rc b/scripts/online.rc
deleted file mode 100644
--- a/scripts/online.rc
+++ /dev/null
@@ -1,46 +0,0 @@
-irc-connect freenode chat.freenode.net 6667 lambdabot Lambda_Robots:_100%_Loyal
-rc passwd.rc
-admin + freenode:Cale
-admin + freenode:Igloo
-admin + freenode:Lemmih
-admin + freenode:Pseudonym
-admin + freenode:mauke
-admin + freenode:dons
-admin + freenode:gwern
-admin + freenode:igli
-admin + freenode:int-e
-admin + freenode:musasabi
-admin + freenode:shapr
-admin + freenode:sjanssen
-admin + freenode:sorear
-admin + freenode:vincenz
-join freenode:##logic
-join freenode:#arch-haskell
-join freenode:#darcs
-join freenode:#debian-es
-join freenode:#friendly-coders
-join freenode:#gentoo-haskell
-join freenode:#ghc
-join freenode:#happs
-join freenode:#haskell
-join freenode:#haskell-blah
-join freenode:#haskell-books
-join freenode:#haskell-overflow
-join freenode:#haskell-soc
-join freenode:#haskell.cz
-join freenode:#haskell.de
-join freenode:#haskell.dut
-join freenode:#haskell.es
-join freenode:#haskell.fi
-join freenode:#haskell.fr
-join freenode:#haskell.it
-join freenode:#haskell.jp
-join freenode:#haskell.se
-join freenode:#haskell_ru
-join freenode:#lessswrong
-join freenode:#macosx
-join freenode:#perl6
-join freenode:#rosettacode
-join freenode:#scala
-join freenode:#unicycling
-join freenode:#xmonad
diff --git a/src/Modules.hs b/src/Modules.hs
--- a/src/Modules.hs
+++ b/src/Modules.hs
@@ -18,6 +18,6 @@
     ++ haskellPlugins
     ++ ["irc", "localtime", "topic"] -- ircPlugins
     ++ ["dummy", "fresh", "todo"] -- miscPlugins
-    ++ ["bf", "dice", "elite", "filter", "quote", "slap", "unlambda", "vixen"] -- noveltyPlugins
-    ++ referencePlugins
-    ++ socialPlugins)
+    ++ ["bf", "dice", "elite", "filter", "quote", "slap", "unlambda"] -- noveltyPlugins
+    ++ ["dict", "metar", "oeis", "search", "spell", "ticker", "where"] -- referencePlugins
+    ++ ["activity", "karma", "poll", "tell"]) -- socialPlugins
