diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,4 +1,9 @@
 
+Version 4.3.5
+-----
+
+* Removed the obsolete preprocessor instructions for conditional compilation.
+
 Version 4.3.4
 -----
 
diff --git a/Simulation/Aivika/Results.hs b/Simulation/Aivika/Results.hs
--- a/Simulation/Aivika/Results.hs
+++ b/Simulation/Aivika/Results.hs
@@ -1,5 +1,5 @@
 
-{-# LANGUAGE CPP, FlexibleContexts, FlexibleInstances, UndecidableInstances, ExistentialQuantification #-}
+{-# LANGUAGE FlexibleContexts, FlexibleInstances, UndecidableInstances, ExistentialQuantification #-}
 
 -- |
 -- Module     : Simulation.Aivika.Results
@@ -29,9 +29,7 @@
         ResultComputation(..),
         ResultListWithSubscript(..),
         ResultArrayWithSubscript(..),
-#ifndef __HASTE__
         ResultVectorWithSubscript(..),
-#endif
         -- * Definitions Focused on Using the Library
         ResultValue(..),
         resultsToIntValues,
@@ -107,10 +105,7 @@
 
 import qualified Data.Map as M
 import qualified Data.Array as A
-
-#ifndef __HASTE__
 import qualified Data.Vector as V
-#endif
 
 import Data.Ix
 import Data.Maybe
@@ -1953,16 +1948,12 @@
       items = A.elems m
       subscript = map (\i -> "[" ++ show i ++ "]") (A.indices m)
 
-#ifndef __HASTE__
-
 instance ResultProvider p => ResultProvider (V.Vector p) where
   
   resultSource' name i m =
     resultSource' name i $ ResultVectorWithSubscript m subscript where
       subscript = V.imap (\i x -> intSubscript i) m
 
-#endif
-
 -- | Represents a list with the specified subscript.
 data ResultListWithSubscript p =
   ResultListWithSubscript [p] [String]
@@ -1971,14 +1962,10 @@
 data ResultArrayWithSubscript i p =
   ResultArrayWithSubscript (A.Array i p) (A.Array i String)
 
-#ifndef __HASTE__
-
 -- | Represents a vector with the specified subscript.
 data ResultVectorWithSubscript p =
   ResultVectorWithSubscript (V.Vector p) (V.Vector String)
 
-#endif
-
 instance ResultProvider p => ResultProvider (ResultListWithSubscript p) where
 
   resultSource' name i (ResultListWithSubscript xs ys) =
@@ -2007,8 +1994,6 @@
     resultSource' name i $ ResultListWithSubscript items subscript where
       items = A.elems xs
       subscript = A.elems ys
-      
-#ifndef __HASTE__
 
 instance ResultProvider p => ResultProvider (ResultVectorWithSubscript p) where
 
@@ -2034,8 +2019,6 @@
         in resultSource' name' (VectorItemId y) x
       items' = V.map resultSourceSummary items
 
-#endif
-
 instance (Ix i, Show i, ResultComputing m) => ResultProvider (m (A.Array i Double)) where
 
   resultSource' name i m =
@@ -2046,8 +2029,6 @@
   resultSource' name i m =
     ResultItemSource $ ResultItem $ fmap A.elems $ computeResultValue name i m
 
-#ifndef __HASTE__
-
 instance ResultComputing m => ResultProvider (m (V.Vector Double)) where
 
   resultSource' name i m =
@@ -2057,8 +2038,6 @@
 
   resultSource' name i m =
     ResultItemSource $ ResultItem $ fmap V.toList $ computeResultValue name i m
-
-#endif
 
 instance (Show si, Show sm, Show so,
           ResultItemable (ResultValue si),
diff --git a/Simulation/Aivika/Unboxed.hs b/Simulation/Aivika/Unboxed.hs
--- a/Simulation/Aivika/Unboxed.hs
+++ b/Simulation/Aivika/Unboxed.hs
@@ -1,5 +1,5 @@
 
-{-# LANGUAGE CPP, FlexibleContexts #-}
+{-# LANGUAGE FlexibleContexts #-}
 
 -- |
 -- Module     : Simulation.Aivika.Unboxed
@@ -40,9 +40,5 @@
 instance Unboxed Word16
 instance Unboxed Word32
 
-#ifndef __HASTE__
-
 instance Unboxed Int64
 instance Unboxed Word64
-
-#endif
diff --git a/aivika.cabal b/aivika.cabal
--- a/aivika.cabal
+++ b/aivika.cabal
@@ -1,14 +1,15 @@
 name:            aivika
-version:         4.3.4
-synopsis:        A multi-paradigm simulation library
+version:         4.3.5
+synopsis:        A multi-method simulation library
 description:
-    Aivika is a multi-paradigm simulation library with a strong emphasis
-    on Discrete Event Simulation (DES) and System Dynamics (SD).
+    Aivika is a multi-method simulation library focused on 
+    discrete event simulation (DES) with partial support of 
+    system dynamics and agent-based modeling.
     .
     The library has the following features:
     .
     * allows defining recursive stochastic differential equations of 
-      System Dynamics (unordered as in maths via the recursive do-notation);
+      system dynamics (unordered as in maths via the recursive do-notation);
     .
     * supports the event-driven paradigm of DES as a basic core for 
       implementing other paradigms;
@@ -24,15 +25,15 @@
     .
     * supports the resource preemption;
     .
-    * allows defining a queue network based on infinite streams of data
-      and their processors, where we can define a complex enough
-      behaviour just in a few lines of code;
+    * allows defining a queue network based on streams of data (transacts) 
+      and their processors;
     .
     * allows simulating circuits with recursive links and delays;
     .
     * supports the activity-oriented paradigm of DES;
     .
-    * supports the basic constructs for the agent-based modeling;
+    * supports basic constructs for the agent-based modeling such as 
+      agents, states, timeout and timer handlers;
     .
     * allows creating combined discrete-continuous models as all parts
       of the library are well integrated and this is reflected directly 
@@ -52,8 +53,8 @@
       (monads, streams and arrows).
     .
     Aivika itself is a light-weight engine with minimal dependencies. 
-    However, it has additional packages Aivika Experiment [1] and 
-    Aivika Experiment Chart [2] that offer the following features:
+    However, it has additional packages [1, 2] that offer the following 
+    features:
     .
     * automating simulation experiments;
     .
@@ -68,14 +69,19 @@
     .
     * has an extensible architecture.
     .
-    The charting package has two interchangeable back-ends:
-    Aivika Experiment Cairo [3] and Aivika Experiment Diagrams [4].
-    .
-    All libraries were tested on Linux, Windows and OS X.
+    The charting package has two interchangeable back-ends [3, 4],
+    where one of them uses Cairo and it is more preferable.
     .
     The PDF documentation and installation instructions are 
-    available on the Aivika Wiki [5] website.
+    available on the Aivika Wiki website [5]. 
     .
+    Moreover, the method was generalized [6] and applied to 
+    nested simulation [7] and parallel distributed simulation [8]. 
+    .
+    The libraries were tested on Linux, Windows and OS X.
+    .
+    A more full information about Aivika is available on the project website [9].
+    .
     \[1] <http://hackage.haskell.org/package/aivika-experiment>
     .
     \[2] <http://hackage.haskell.org/package/aivika-experiment-chart>
@@ -86,8 +92,17 @@
     .
     \[5] <https://github.com/dsorokin/aivika/wiki>
     .
+    \[6] <http://hackage.haskell.org/package/aivika-transformers>
+    .
+    \[7] <http://hackage.haskell.org/package/aivika-branches>
+    .
+    \[8] <http://hackage.haskell.org/package/aivika-distributed>
+    .
+    \[9] <http://www.aivikasoft.com/en/products/aivika.html>
+    .
     P.S. Aivika is actually a genuine female Mari name which is pronounced 
     with stress on the last syllable.
+    .
 category:        Simulation
 license:         BSD3
 license-file:    LICENSE
@@ -97,7 +112,7 @@
 homepage:        http://www.aivikasoft.com/en/products/aivika.html
 cabal-version:   >= 1.10
 build-type:      Simple
-tested-with:     GHC == 7.10.1
+tested-with:     GHC == 8.0.1
 
 extra-source-files:  examples/BassDiffusion.hs
                      examples/BouncingBall.hs
@@ -221,8 +236,7 @@
                         TypeFamilies,
                         DeriveDataTypeable,
                         TypeSynonymInstances,
-                        RankNTypes,
-                        CPP
+                        RankNTypes
                      
     ghc-options:     -O2
 
