diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -1,1 +1,4 @@
 # colorless-haskell
+
+This is the Haskell colorless library which includes the server-side runtime.
+It's meant to be used in conjunction with the command line [code generator](github.com/jxv/colorless).
diff --git a/colorless.cabal b/colorless.cabal
--- a/colorless.cabal
+++ b/colorless.cabal
@@ -3,7 +3,7 @@
 -- see: https://github.com/sol/hpack
 
 name:           colorless
-version:        0.0.2
+version:        0.1.0
 synopsis:       Colorless
 description:    Colorless
 category:       Web
diff --git a/library/Colorless/Runtime/Ast.hs b/library/Colorless/Runtime/Ast.hs
--- a/library/Colorless/Runtime/Ast.hs
+++ b/library/Colorless/Runtime/Ast.hs
@@ -3,7 +3,6 @@
   ( Ast(..)
   , Ref(..)
   , If(..)
-  , Set(..)
   , Get(..)
   , Define(..)
   , Lambda(..)
@@ -34,7 +33,6 @@
 data Ast
   = Ast'Ref Ref
   | Ast'If If
-  | Ast'Set Set
   | Ast'Get Get
   | Ast'Define Define
   | Ast'Lambda Lambda
@@ -55,7 +53,6 @@
   parseJSON v
     =   (Ast'Ref <$> parseJSON v)
     <|> (Ast'If <$> parseJSON v)
-    <|> (Ast'Set <$> parseJSON v)
     <|> (Ast'Get <$> parseJSON v)
     <|> (Ast'Define <$> parseJSON v)
     <|> (Ast'Lambda <$> parseJSON v)
@@ -88,17 +85,6 @@
 instance FromJSON If where
   parseJSON (Array arr) = case V.toList arr of
     ["if", cond, true, false] -> If <$> parseJSON cond <*> parseJSON true <*> parseJSON false
-    _ -> mzero
-  parseJSON _ = mzero
-
-data Set = Set
-  { var :: Symbol
-  , expr :: Ast
-  } deriving (Show, Eq)
-
-instance FromJSON Set where
-  parseJSON (Array arr) = case V.toList arr of
-    ["set", var, expr] -> Set <$> parseJSON var <*> parseJSON expr
     _ -> mzero
   parseJSON _ = mzero
 
diff --git a/library/Colorless/Runtime/Expr.hs b/library/Colorless/Runtime/Expr.hs
--- a/library/Colorless/Runtime/Expr.hs
+++ b/library/Colorless/Runtime/Expr.hs
@@ -9,7 +9,6 @@
   , UnWrap(..)
   , UnStruct(..)
   , If(..)
-  , Set(..)
   , Get(..)
   , Define(..)
   , Lambda(..)
@@ -88,7 +87,6 @@
   | Expr'UnVal (UnVal m)
   | Expr'Val Val
   | Expr'If (If m)
-  | Expr'Set (Set m)
   | Expr'Get (Get m)
   | Expr'Define (Define m)
   | Expr'Lambda (Lambda m)
@@ -129,11 +127,6 @@
   , false :: Expr m
   } deriving (Show, Eq)
 
-data Set m = Set
-  { var :: Symbol
-  , expr :: Expr m
-  } deriving (Show, Eq)
-
 data Get m = Get
   { path :: [Text]
   , expr :: Expr m
@@ -216,7 +209,6 @@
 fromAst = \case
   Ast'Ref Ast.Ref{symbol} -> Expr'Ref $ Ref symbol
   Ast'If Ast.If{cond,true,false} -> Expr'If $ If (fromAst cond) (fromAst true) (fromAst false)
-  Ast'Set Ast.Set{var,expr} -> Expr'Set $ Set var (fromAst expr)
   Ast'Get Ast.Get{path,val} -> Expr'Get $ Get path (fromAst val)
   Ast'Define Ast.Define{var,expr} -> Expr'Define $ Define var (fromAst expr)
   Ast'Lambda Ast.Lambda{args,expr} -> Expr'Lambda $ Lambda args (fromAst expr)
@@ -264,7 +256,6 @@
   Expr'If if' -> evalIf if' envRef
   Expr'UnVal unVal -> evalUnVal unVal envRef
   Expr'Val val -> return $ Expr'Val val
-  Expr'Set set -> evalSet set envRef
   Expr'Get get -> evalGet get envRef
   Expr'Define define -> evalDefine define envRef
   Expr'Lambda lambda -> evalLambda lambda envRef
@@ -313,16 +304,6 @@
       envRef'' <- liftIO $ newIORef =<< readIORef envRef
       eval (if cond' then true else false) envRef''
     _ -> runtimeThrow RuntimeError'IncompatibleType
-
-evalSet :: (MonadIO m, RuntimeThrower m) => Set m -> IORef (Env m) -> Eval m (Expr m)
-evalSet Set{var = var@(Symbol var'), expr} envRef = do
-  expr' <- eval expr envRef
-  env <- liftIO $ readIORef envRef
-  case Map.lookup var env of
-    Nothing -> runtimeThrow $ RuntimeError'UnknownVariable var'
-    Just v -> do
-      liftIO $ writeIORef v expr'
-      return expr'
 
 evalGet :: (MonadIO m, RuntimeThrower m) => Get m -> IORef (Env m) -> Eval m (Expr m)
 evalGet Get{path,expr} envRef = getter path =<< eval expr envRef
diff --git a/package.yaml b/package.yaml
--- a/package.yaml
+++ b/package.yaml
@@ -1,5 +1,5 @@
 name: colorless
-version: '0.0.2'
+version: '0.1.0'
 category: Web
 synopsis: Colorless
 description: Colorless
diff --git a/tests/AstSpec.hs b/tests/AstSpec.hs
--- a/tests/AstSpec.hs
+++ b/tests/AstSpec.hs
@@ -49,11 +49,6 @@
           (Ast'Const $ Const'String "true")
           (Ast'Const $ Const'String "false"))
 
-    context "Set" $ do
-      it "simple" $ shouldBe
-        (parseAst $ Array $ V.fromList ["set", "myVar", Bool False])
-        (Just $ Ast'Set $ Set "myVar" (Ast'Const $ Const'Bool False))
-
     context "Get" $ do
       it "simple yet not semantically correct" $ shouldBe
         (parseAst $ Array $ V.fromList ["get", Array $ V.fromList ["a","b","c"], Bool False])
