module Main where

import Control.Etage
import Control.Etage.Dump
import Control.Etage.Sequence
import Control.Etage.Fail

-- Hangs without -threaded switch

main :: IO ()
main = do
  prepareEnvironment

  incubate $ do
    nerveDump <- growNeuron defaultOptions :: NerveOnlyFor DumpNeuron
    nerve1 <- growNeuron defaultOptions :: NerveOnlyFrom (SequenceNeuron Int)
    _ <- growNeuron defaultOptions :: NerveOnlyFrom (SequenceNeuron Int)
    _ <- growNeuron defaultOptions :: NerveNone FailNeuron

    nerve1 `attachTo` [Translatable nerveDump]
