diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,6 +2,10 @@
 
 See full history at: <https://github.com/faylang/fay/commits>
 
+#### 0.19.0.2 (2014-01-30)
+
+Bugfixes:
+* Don't export transcoding information for fay-base packages when compiling with --no-stdlib
 
 #### 0.19.0.1 (2014-01-15)
 
diff --git a/examples/json.hs b/examples/json.hs
--- a/examples/json.hs
+++ b/examples/json.hs
@@ -1,5 +1,3 @@
-
-
 module Console where
 
 import           FFI
@@ -11,10 +9,12 @@
 myData :: MyData
 myData = MyData { xVar = pack "asdfasd", yVar = 9 }
 
-
 main = do
 	jsonSerialized <- toJSON myData
 	jsonDeserialized <- toMyData jsonSerialized
+	-- The "instance" field below is required for reliable parsing.
+	-- If your JSON source doesn't have an "instance" field, you can
+	-- add one like this: ffi "%1['instance']='MyData',%1" :: Json -> MyData
 	fromStringData <- toMyData "{\"xVar\":3,\"yVar\":-1,\"instance\":\"MyData\"}"
 	print' jsonSerialized
 
diff --git a/fay.cabal b/fay.cabal
--- a/fay.cabal
+++ b/fay.cabal
@@ -1,5 +1,5 @@
 name:                fay
-version:             0.19.0.1
+version:             0.19.0.2
 synopsis:            A compiler for Fay, a Haskell subset that compiles to JavaScript.
 description:         Fay is a proper subset of Haskell which is type-checked
                      with GHC, and compiled to JavaScript. It is lazy, pure, has a Fay monad,
diff --git a/src/Fay/Compiler.hs b/src/Fay/Compiler.hs
--- a/src/Fay/Compiler.hs
+++ b/src/Fay/Compiler.hs
@@ -95,18 +95,23 @@
 -- | Compile given the location and source string.
 compileFileWithSource :: FilePath -> String -> Compile ([JsStmt], [JsStmt])
 compileFileWithSource filepath contents = do
+  exportStdlib <- config configExportStdlib
   ((hstmts,fstmts),st,wr) <- compileWith filepath compileModuleFromAST compileFileWithSource desugar contents
   modify $ \s -> s { stateImported      = stateImported      st
                    , stateJsModulePaths = stateJsModulePaths st
                    }
-  hstmts' <- maybeOptimize $ hstmts ++ writerCons wr ++ makeTranscoding wr
+  hstmts' <- maybeOptimize $ hstmts ++ writerCons wr ++ makeTranscoding exportStdlib (stateModuleName st) wr
   fstmts' <- maybeOptimize fstmts
   return (hstmts', fstmts')
   where
-    makeTranscoding :: CompileWriter -> [JsStmt]
-    makeTranscoding CompileWriter{..} =
-      let fay2js = if null writerFayToJs then [] else fayToJsHash writerFayToJs
-          js2fay = if null writerJsToFay then [] else jsToFayHash writerJsToFay
+    makeTranscoding :: Bool -> ModuleName a -> CompileWriter -> [JsStmt]
+    makeTranscoding exportStdlib moduleName CompileWriter{..} =
+      let fay2js = if null writerFayToJs || (anStdlibModule moduleName && not exportStdlib)
+                     then []
+                     else fayToJsHash writerFayToJs
+          js2fay = if null writerJsToFay || (anStdlibModule moduleName && not exportStdlib)
+                     then []
+                     else jsToFayHash writerJsToFay
       in fay2js ++ js2fay
     maybeOptimize :: [JsStmt] -> Compile [JsStmt]
     maybeOptimize stmts = do
diff --git a/src/Fay/Compiler/Exp.hs b/src/Fay/Compiler/Exp.hs
--- a/src/Fay/Compiler/Exp.hs
+++ b/src/Fay/Compiler/Exp.hs
@@ -38,6 +38,7 @@
   Paren _ exp                        -> compileExp exp
   Var _ qname                        -> compileVar qname
   Lit _ lit                          -> compileLit lit
+  App _ (Var _ (UnQual _ (Ident _ "ffi"))) _ -> throwError (FfiNeedsTypeSig exp)
   App _ exp1 exp2                    -> compileApp exp1 exp2
   NegApp _ exp                       -> compileNegApp exp
   InfixApp _ exp1 op exp2            -> compileInfixApp exp1 op exp2
diff --git a/src/Fay/Types.hs b/src/Fay/Types.hs
--- a/src/Fay/Types.hs
+++ b/src/Fay/Types.hs
@@ -201,7 +201,7 @@
   | FfiFormatIncompleteArg SrcSpanInfo
   | FfiFormatInvalidJavaScript SrcSpanInfo String String
   | FfiFormatNoSuchArg SrcSpanInfo Int
-  | FfiNeedsTypeSig S.Decl
+  | FfiNeedsTypeSig S.Exp
   | GHCError String
   | InvalidDoBlock
   | ParseError S.SrcLoc String
