diff --git a/csound-expression-dynamic.cabal b/csound-expression-dynamic.cabal
--- a/csound-expression-dynamic.cabal
+++ b/csound-expression-dynamic.cabal
@@ -1,5 +1,5 @@
 Name:          csound-expression-dynamic
-Version:       0.3.8
+Version:       0.3.9
 Cabal-Version: >= 1.22
 License:       BSD3
 License-file:  LICENSE
diff --git a/src/Csound/Dynamic/Types/Exp.hs b/src/Csound/Dynamic/Types/Exp.hs
--- a/src/Csound/Dynamic/Types/Exp.hs
+++ b/src/Csound/Dynamic/Types/Exp.hs
@@ -198,10 +198,6 @@
 type ArrSize a = [a]
 type ArrIndex a = [a]
 
-isEmptyExp :: E -> Bool
-isEmptyExp e = isNothing (ratedExpDepends re) && (ratedExpExp re == EmptyExp)
-    where re = unFix e
-
 -- Named variable
 data Var
     = Var
@@ -394,8 +390,7 @@
 instance Hashable InstrId
 
 
-#if MIN_VERSION_hashable(1,3,4)
-#else
+#if !MIN_VERSION_hashable(1,3,4)
 instance Hashable1 IM.IntMap
 #endif
 deriving instance Generic1 IM.IntMap
@@ -422,6 +417,9 @@
 $(deriveShow1 ''Inline)
 $(deriveShow1 ''MainExp)
 $(deriveShow1 ''RatedExp)
+
+isEmptyExp :: E -> Bool
+isEmptyExp (Fix re) = isNothing (ratedExpDepends re) && (ratedExpExp re == EmptyExp)
 
 --------------------------------------------------------------
 -- comments
