___ ___ _ / _ \ /\ /\/ __(_) / /_\// /_/ / / | | GHC Interactive, version 5.01, for Haskell 98. / /_\\/ __ / /___| | http://www.haskell.org/ghc/ \____/\/ /_/\____/|_| Type :? for help. Loading package std ... linking ... done. Prelude> :unset +s Prelude> -- first, tidy up: Prelude> :! rm -f *.hi *.o *~ Prelude> :! cp D1.hs D.hs Prelude> Prelude> -- load the program (all interpreted) Prelude> :load A Ok, modules loaded: Main, B, C, D. Main> Main> -- reloading should do nothing Main> :reload Ok, modules loaded: Main, B, C, D. Main> Main> -- make sure `main' works Main> main "hello world84" Main> Main> -- touch a module + recompile Main> :! sleep 1 Main> :! touch C.hs Main> :reload Ok, modules loaded: Main, B, C, D. Main> Main> -- make sure `main' still works Main> main "hello world84" Main> Main> -- compile D & reload Main> :! $HC $HC_OPTS -no-recomp -c D.hs Main> :reload Ok, modules loaded: Main, B, C, D. Main> main "hello world84" Main> Main> -- change D, recompile & reload Main> :! cp D2.hs D.hs Main> :! $HC $HC_OPTS -no-recomp -c D.hs Main> :reload Ok, modules loaded: Main, B, C, D. Main> :load A Ok, modules loaded: Main, B, C, D. Main> Main> -- make sure we're picking up the new D, via B Main> :module B B> g 42 44 B> Leaving GHCi.