diff --git a/ChangeLog b/ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,4 @@
+0.17 Added EvStream.joinEs
 0.16 Added EvStream.delay
 0.15 Fixes a Prelude.undefined error
 0.14 Fixes a space leak, fixes integration being factor 2 off
diff --git a/Control/FRPNow/EvStream.hs b/Control/FRPNow/EvStream.hs
--- a/Control/FRPNow/EvStream.hs
+++ b/Control/FRPNow/EvStream.hs
@@ -22,6 +22,7 @@
 dropEv,
    toChanges,
    edges,
+joinEs,
    -- * Folds and scans
   scanlEv,
   foldrEv,
@@ -205,9 +206,12 @@
      ev <- plan (loop . last <$> e')
      return (pure e' `switch` ev)
 
-
-
-
+-- | Turns an event of an event stream into an event stream.
+joinEs :: Event (EvStream b) -> EvStream b
+joinEs e = S $ before `switch` after where
+  before = join <$> plan (getEs <$> e)
+  after = getEs <$> e
+              
 
 
 -- | Left fold over an eventstream to create a behavior (behavior depends on when
diff --git a/frpnow.cabal b/frpnow.cabal
--- a/frpnow.cabal
+++ b/frpnow.cabal
@@ -1,5 +1,5 @@
 Name:                frpnow
-Version:             0.16
+Version:             0.17
 Synopsis:	     Principled practical FRP
 Description:         FRP with first-class behaviors and interalized IO, without space leaks
 License:             BSD3
