Ctrl-C loses module loading progress in GHCi HEAD
In GHC 9.2 and older, if you load several modules into GHCi and hit Ctrl-C, you can resume later by invoking :reload
. For instance, here is an example of doing so when loading base-compat-0.12.1
into GHCi 9.2.1:
$ cabal get base-compat-0.12.1 && cd base-compat-0.12.1/
$ cabal repl -w ghc-9.2
Build profile: -w ghc-9.2.1 -O1
In order, the following will be built (use -v for more details):
- base-compat-0.12.1 (lib) (first run)
Preprocessing library for base-compat-0.12.1..
GHCi, version 9.2.1: https://www.haskell.org/ghc/ :? for help
Loaded GHCi configuration from /home/ryanglscott/.ghci
[ 1 of 122] Compiling Control.Concurrent.Compat ( src/Control/Concurrent/Compat.hs, interpreted )
[ 2 of 122] Compiling Control.Concurrent.Compat.Repl ( src/Control/Concurrent/Compat/Repl.hs, interpreted )
[ 3 of 122] Compiling Control.Concurrent.MVar.Compat ( src/Control/Concurrent/MVar/Compat.hs, interpreted )
[ 4 of 122] Compiling Control.Concurrent.MVar.Compat.Repl ( src/Control/Concurrent/MVar/Compat/Repl.hs, interpreted )
[ 5 of 122] Compiling Control.Exception.Compat ( src/Control/Exception/Compat.hs, interpreted )
[ 6 of 122] Compiling Control.Exception.Compat.Repl ( src/Control/Exception/Compat/Repl.hs, interpreted )
[ 7 of 122] Compiling Control.Monad.Compat ( src/Control/Monad/Compat.hs, interpreted )
[ 8 of 122] Compiling Control.Monad.Compat.Repl ( src/Control/Monad/Compat/Repl.hs, interpreted )
[ 9 of 122] Compiling Control.Monad.Fail.Compat ( src/Control/Monad/Fail/Compat.hs, interpreted )
[ 10 of 122] Compiling Control.Monad.Fail.Compat.Repl ( src/Control/Monad/Fail/Compat/Repl.hs, interpreted )
[ 11 of 122] Compiling Control.Monad.IO.Class.Compat ( src/Control/Monad/IO/Class/Compat.hs, interpreted )
[ 12 of 122] Compiling Control.Monad.IO.Class.Compat.Repl ( src/Control/Monad/IO/Class/Compat/Repl.hs, interpreted )
[ 13 of 122] Compiling Control.Monad.ST.Lazy.Unsafe.Compat ( src/Control/Monad/ST/Lazy/Unsafe/Compat.hs, interpreted )
[ 14 of 122] Compiling Control.Monad.ST.Lazy.Unsafe.Compat.Repl ( src/Control/Monad/ST/Lazy/Unsafe/Compat/Repl.hs, interpreted )
[ 15 of 122] Compiling Control.Monad.ST.Unsafe.Compat ( src/Control/Monad/ST/Unsafe/Compat.hs, interpreted )
[ 16 of 122] Compiling Control.Monad.ST.Unsafe.Compat.Repl ( src/Control/Monad/ST/Unsafe/Compat/Repl.hs, interpreted )
[ 17 of 122] Compiling Data.Bifoldable.Compat ( src/Data/Bifoldable/Compat.hs, interpreted )
[ 18 of 122] Compiling Data.Bifoldable.Compat.Repl ( src/Data/Bifoldable/Compat/Repl.hs, interpreted )
[ 19 of 122] Compiling Data.Bifunctor.Compat ( src/Data/Bifunctor/Compat.hs, interpreted )
[ 20 of 122] Compiling Data.Bifunctor.Compat.Repl ( src/Data/Bifunctor/Compat/Repl.hs, interpreted )
[ 21 of 122] Compiling Data.Bitraversable.Compat ( src/Data/Bitraversable/Compat.hs, interpreted )
[ 22 of 122] Compiling Data.Bitraversable.Compat.Repl ( src/Data/Bitraversable/Compat/Repl.hs, interpreted )
[ 23 of 122] Compiling Data.Bits.Compat ( src/Data/Bits/Compat.hs, interpreted )
[ 24 of 122] Compiling Data.Bits.Compat.Repl ( src/Data/Bits/Compat/Repl.hs, interpreted )
[ 25 of 122] Compiling Data.Bool.Compat ( src/Data/Bool/Compat.hs, interpreted )
[ 26 of 122] Compiling Data.Bool.Compat.Repl ( src/Data/Bool/Compat/Repl.hs, interpreted )
[ 27 of 122] Compiling Data.Complex.Compat ( src/Data/Complex/Compat.hs, interpreted )
[ 28 of 122] Compiling Data.Complex.Compat.Repl ( src/Data/Complex/Compat/Repl.hs, interpreted )
[ 29 of 122] Compiling Data.Either.Compat ( src/Data/Either/Compat.hs, interpreted )
[ 30 of 122] Compiling Data.Either.Compat.Repl ( src/Data/Either/Compat/Repl.hs, interpreted )
[ 31 of 122] Compiling Data.Foldable.Compat ( src/Data/Foldable/Compat.hs, interpreted )
[ 32 of 122] Compiling Data.Foldable.Compat.Repl ( src/Data/Foldable/Compat/Repl.hs, interpreted )
[ 33 of 122] Compiling Data.Function.Compat ( src/Data/Function/Compat.hs, interpreted )
[ 34 of 122] Compiling Data.Function.Compat.Repl ( src/Data/Function/Compat/Repl.hs, interpreted )
[ 35 of 122] Compiling Data.Functor.Compat ( src/Data/Functor/Compat.hs, interpreted )
[ 36 of 122] Compiling Data.Functor.Compat.Repl ( src/Data/Functor/Compat/Repl.hs, interpreted )
[ 37 of 122] Compiling Data.Functor.Compose.Compat ( src/Data/Functor/Compose/Compat.hs, interpreted )
[ 38 of 122] Compiling Data.Functor.Compose.Compat.Repl ( src/Data/Functor/Compose/Compat/Repl.hs, interpreted )
[ 39 of 122] Compiling Data.Functor.Const.Compat ( src/Data/Functor/Const/Compat.hs, interpreted )
[ 40 of 122] Compiling Data.Functor.Const.Compat.Repl ( src/Data/Functor/Const/Compat/Repl.hs, interpreted )
[ 41 of 122] Compiling Data.Functor.Contravariant.Compat ( src/Data/Functor/Contravariant/Compat.hs, interpreted )
[ 42 of 122] Compiling Data.Functor.Contravariant.Compat.Repl ( src/Data/Functor/Contravariant/Compat/Repl.hs, interpreted )
[ 43 of 122] Compiling Data.Functor.Identity.Compat ( src/Data/Functor/Identity/Compat.hs, interpreted )
[ 44 of 122] Compiling Data.Functor.Identity.Compat.Repl ( src/Data/Functor/Identity/Compat/Repl.hs, interpreted )
[ 45 of 122] Compiling Data.Functor.Product.Compat ( src/Data/Functor/Product/Compat.hs, interpreted )
[ 46 of 122] Compiling Data.Functor.Product.Compat.Repl ( src/Data/Functor/Product/Compat/Repl.hs, interpreted )
[ 47 of 122] Compiling Data.Functor.Sum.Compat ( src/Data/Functor/Sum/Compat.hs, interpreted )
[ 48 of 122] Compiling Data.Functor.Sum.Compat.Repl ( src/Data/Functor/Sum/Compat/Repl.hs, interpreted )
[ 49 of 122] Compiling Data.IORef.Compat ( src/Data/IORef/Compat.hs, interpreted )
[ 50 of 122] Compiling Data.IORef.Compat.Repl ( src/Data/IORef/Compat/Repl.hs, interpreted )
[ 51 of 122] Compiling Data.List.Compat ( src/Data/List/Compat.hs, interpreted )
[ 52 of 122] Compiling Data.List.Compat.Repl ( src/Data/List/Compat/Repl.hs, interpreted )
[ 53 of 122] Compiling Data.List.NonEmpty.Compat ( src/Data/List/NonEmpty/Compat.hs, interpreted )
[ 54 of 122] Compiling Data.List.NonEmpty.Compat.Repl ( src/Data/List/NonEmpty/Compat/Repl.hs, interpreted )
[ 55 of 122] Compiling Data.Monoid.Compat ( src/Data/Monoid/Compat.hs, interpreted )
[ 56 of 122] Compiling Data.Monoid.Compat.Repl ( src/Data/Monoid/Compat/Repl.hs, interpreted )
[ 57 of 122] Compiling Data.Proxy.Compat ( src/Data/Proxy/Compat.hs, interpreted )
[ 58 of 122] Compiling Data.Proxy.Compat.Repl ( src/Data/Proxy/Compat/Repl.hs, interpreted )
[ 59 of 122] Compiling Data.Ratio.Compat ( src/Data/Ratio/Compat.hs, interpreted )
^CInterrupted.
λ> :reload
[ 59 of 122] Compiling Data.Ratio.Compat ( src/Data/Ratio/Compat.hs, interpreted )
[ 60 of 122] Compiling Data.Ratio.Compat.Repl ( src/Data/Ratio/Compat/Repl.hs, interpreted )
[ 61 of 122] Compiling Data.STRef.Compat ( src/Data/STRef/Compat.hs, interpreted )
[ 62 of 122] Compiling Data.STRef.Compat.Repl ( src/Data/STRef/Compat/Repl.hs, interpreted )
[ 63 of 122] Compiling Data.Semigroup.Compat ( src/Data/Semigroup/Compat.hs, interpreted )
[ 64 of 122] Compiling Data.Semigroup.Compat.Repl ( src/Data/Semigroup/Compat/Repl.hs, interpreted )
[ 65 of 122] Compiling Data.String.Compat ( src/Data/String/Compat.hs, interpreted )
[ 66 of 122] Compiling Data.String.Compat.Repl ( src/Data/String/Compat/Repl.hs, interpreted )
[ 67 of 122] Compiling Data.Tuple.Compat ( src/Data/Tuple/Compat.hs, interpreted )
src/Data/Tuple/Compat.hs:19:1: warning: [-Wunused-imports]
The import of ‘GHC.Tuple’ is redundant
except perhaps to import instances from ‘GHC.Tuple’
To import instances alone, use: import GHC.Tuple()
|
19 | import GHC.Tuple (Solo(..))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[ 68 of 122] Compiling Data.Tuple.Compat.Repl ( src/Data/Tuple/Compat/Repl.hs, interpreted )
[ 69 of 122] Compiling Data.Type.Coercion.Compat ( src/Data/Type/Coercion/Compat.hs, interpreted )
[ 70 of 122] Compiling Data.Type.Coercion.Compat.Repl ( src/Data/Type/Coercion/Compat/Repl.hs, interpreted )
[ 71 of 122] Compiling Data.Type.Equality.Compat ( src/Data/Type/Equality/Compat.hs, interpreted )
[ 72 of 122] Compiling Data.Type.Equality.Compat.Repl ( src/Data/Type/Equality/Compat/Repl.hs, interpreted )
[ 73 of 122] Compiling Data.Version.Compat ( src/Data/Version/Compat.hs, interpreted )
[ 74 of 122] Compiling Data.Version.Compat.Repl ( src/Data/Version/Compat/Repl.hs, interpreted )
[ 75 of 122] Compiling Data.Void.Compat ( src/Data/Void/Compat.hs, interpreted )
[ 76 of 122] Compiling Data.Void.Compat.Repl ( src/Data/Void/Compat/Repl.hs, interpreted )
[ 77 of 122] Compiling Data.Word.Compat ( src/Data/Word/Compat.hs, interpreted )
[ 78 of 122] Compiling Data.Word.Compat.Repl ( src/Data/Word/Compat/Repl.hs, interpreted )
[ 79 of 122] Compiling Debug.Trace.Compat ( src/Debug/Trace/Compat.hs, interpreted )
[ 80 of 122] Compiling Debug.Trace.Compat.Repl ( src/Debug/Trace/Compat/Repl.hs, interpreted )
[ 81 of 122] Compiling Foreign.ForeignPtr.Compat ( src/Foreign/ForeignPtr/Compat.hs, interpreted )
[ 82 of 122] Compiling Foreign.ForeignPtr.Compat.Repl ( src/Foreign/ForeignPtr/Compat/Repl.hs, interpreted )
[ 83 of 122] Compiling Foreign.ForeignPtr.Safe.Compat ( src/Foreign/ForeignPtr/Safe/Compat.hs, interpreted )
[ 84 of 122] Compiling Foreign.ForeignPtr.Safe.Compat.Repl ( src/Foreign/ForeignPtr/Safe/Compat/Repl.hs, interpreted )
[ 85 of 122] Compiling Foreign.ForeignPtr.Unsafe.Compat ( src/Foreign/ForeignPtr/Unsafe/Compat.hs, interpreted )
[ 86 of 122] Compiling Foreign.ForeignPtr.Unsafe.Compat.Repl ( src/Foreign/ForeignPtr/Unsafe/Compat/Repl.hs, interpreted )
[ 87 of 122] Compiling Foreign.Marshal.Alloc.Compat ( src/Foreign/Marshal/Alloc/Compat.hs, interpreted )
[ 88 of 122] Compiling Foreign.Marshal.Alloc.Compat.Repl ( src/Foreign/Marshal/Alloc/Compat/Repl.hs, interpreted )
[ 89 of 122] Compiling Foreign.Marshal.Array.Compat ( src/Foreign/Marshal/Array/Compat.hs, interpreted )
[ 90 of 122] Compiling Foreign.Marshal.Array.Compat.Repl ( src/Foreign/Marshal/Array/Compat/Repl.hs, interpreted )
[ 91 of 122] Compiling Foreign.Marshal.Safe.Compat ( src/Foreign/Marshal/Safe/Compat.hs, interpreted )
[ 92 of 122] Compiling Foreign.Marshal.Safe.Compat.Repl ( src/Foreign/Marshal/Safe/Compat/Repl.hs, interpreted )
[ 93 of 122] Compiling Foreign.Marshal.Unsafe.Compat ( src/Foreign/Marshal/Unsafe/Compat.hs, interpreted )
[ 94 of 122] Compiling Foreign.Marshal.Unsafe.Compat.Repl ( src/Foreign/Marshal/Unsafe/Compat/Repl.hs, interpreted )
[ 95 of 122] Compiling Foreign.Marshal.Utils.Compat ( src/Foreign/Marshal/Utils/Compat.hs, interpreted )
[ 96 of 122] Compiling Foreign.Marshal.Compat ( src/Foreign/Marshal/Compat.hs, interpreted )
[ 97 of 122] Compiling Foreign.Marshal.Compat.Repl ( src/Foreign/Marshal/Compat/Repl.hs, interpreted )
[ 98 of 122] Compiling Foreign.Compat ( src/Foreign/Compat.hs, interpreted )
[ 99 of 122] Compiling Foreign.Compat.Repl ( src/Foreign/Compat/Repl.hs, interpreted )
[100 of 122] Compiling Foreign.Marshal.Utils.Compat.Repl ( src/Foreign/Marshal/Utils/Compat/Repl.hs, interpreted )
[101 of 122] Compiling Numeric.Compat ( src/Numeric/Compat.hs, interpreted )
[102 of 122] Compiling Numeric.Compat.Repl ( src/Numeric/Compat/Repl.hs, interpreted )
[103 of 122] Compiling Numeric.Natural.Compat ( src/Numeric/Natural/Compat.hs, interpreted )
[104 of 122] Compiling Numeric.Natural.Compat.Repl ( src/Numeric/Natural/Compat/Repl.hs, interpreted )
[105 of 122] Compiling Prelude.Compat ( src/Prelude/Compat.hs, interpreted )
[106 of 122] Compiling Prelude.Compat.Repl ( src/Prelude/Compat/Repl.hs, interpreted )
[107 of 122] Compiling System.Environment.Compat ( src/System/Environment/Compat.hs, interpreted )
[108 of 122] Compiling System.Environment.Compat.Repl ( src/System/Environment/Compat/Repl.hs, interpreted )
[109 of 122] Compiling System.Exit.Compat ( src/System/Exit/Compat.hs, interpreted )
[110 of 122] Compiling System.Exit.Compat.Repl ( src/System/Exit/Compat/Repl.hs, interpreted )
[111 of 122] Compiling System.IO.Compat ( src/System/IO/Compat.hs, interpreted )
[112 of 122] Compiling System.IO.Compat.Repl ( src/System/IO/Compat/Repl.hs, interpreted )
[113 of 122] Compiling System.IO.Error.Compat ( src/System/IO/Error/Compat.hs, interpreted )
[114 of 122] Compiling System.IO.Error.Compat.Repl ( src/System/IO/Error/Compat/Repl.hs, interpreted )
[115 of 122] Compiling System.IO.Unsafe.Compat ( src/System/IO/Unsafe/Compat.hs, interpreted )
[116 of 122] Compiling System.IO.Unsafe.Compat.Repl ( src/System/IO/Unsafe/Compat/Repl.hs, interpreted )
[117 of 122] Compiling Text.Read.Compat ( src/Text/Read/Compat.hs, interpreted )
[118 of 122] Compiling Text.Read.Compat.Repl ( src/Text/Read/Compat/Repl.hs, interpreted )
[119 of 122] Compiling Text.Read.Lex.Compat ( src/Text/Read/Lex/Compat.hs, interpreted )
[120 of 122] Compiling Text.Read.Lex.Compat.Repl ( src/Text/Read/Lex/Compat/Repl.hs, interpreted )
[121 of 122] Compiling Type.Reflection.Compat ( src/Type/Reflection/Compat.hs, interpreted )
[122 of 122] Compiling Type.Reflection.Compat.Repl ( src/Type/Reflection/Compat/Repl.hs, interpreted )
Ok, 122 modules loaded.
Notice that before the ^CInterrupted.
, 58 modules had loaded. After running :reload
, GHCi picks up where it left of at module 59, as expected.
In GHC HEAD, however, this is not the case. Ctrl-C'ing before every module loads means that GHCi will have to reload every single module when one :reload
s. Let's see how GHCi HEAD compares when loading base-compat-0.12.1
:
$ cabal repl -w ~/Software/ghc-9.3.20211203/bin/ghc
Resolving dependencies...
Build profile: -w ghc-9.3.20211203 -O1
In order, the following will be built (use -v for more details):
- base-compat-0.12.1 (lib) (first run)
Preprocessing library for base-compat-0.12.1..
GHCi, version 9.3.20211203: https://www.haskell.org/ghc/ :? for help
Loaded GHCi configuration from /home/ryanglscott/.ghci
[ 1 of 122] Compiling Control.Concurrent.Compat ( src/Control/Concurrent/Compat.hs, interpreted )
[ 2 of 122] Compiling Control.Concurrent.Compat.Repl ( src/Control/Concurrent/Compat/Repl.hs, interpreted )
[ 3 of 122] Compiling Control.Concurrent.MVar.Compat ( src/Control/Concurrent/MVar/Compat.hs, interpreted )
[ 4 of 122] Compiling Control.Concurrent.MVar.Compat.Repl ( src/Control/Concurrent/MVar/Compat/Repl.hs, interpreted )
[ 5 of 122] Compiling Control.Exception.Compat ( src/Control/Exception/Compat.hs, interpreted )
[ 6 of 122] Compiling Control.Exception.Compat.Repl ( src/Control/Exception/Compat/Repl.hs, interpreted )
[ 7 of 122] Compiling Control.Monad.Compat ( src/Control/Monad/Compat.hs, interpreted )
[ 8 of 122] Compiling Control.Monad.Compat.Repl ( src/Control/Monad/Compat/Repl.hs, interpreted )
[ 9 of 122] Compiling Control.Monad.Fail.Compat ( src/Control/Monad/Fail/Compat.hs, interpreted )
[ 10 of 122] Compiling Control.Monad.Fail.Compat.Repl ( src/Control/Monad/Fail/Compat/Repl.hs, interpreted )
[ 11 of 122] Compiling Control.Monad.IO.Class.Compat ( src/Control/Monad/IO/Class/Compat.hs, interpreted )
[ 12 of 122] Compiling Control.Monad.IO.Class.Compat.Repl ( src/Control/Monad/IO/Class/Compat/Repl.hs, interpreted )
[ 13 of 122] Compiling Control.Monad.ST.Lazy.Unsafe.Compat ( src/Control/Monad/ST/Lazy/Unsafe/Compat.hs, interpreted )
[ 14 of 122] Compiling Control.Monad.ST.Lazy.Unsafe.Compat.Repl ( src/Control/Monad/ST/Lazy/Unsafe/Compat/Repl.hs, interpreted )
[ 15 of 122] Compiling Control.Monad.ST.Unsafe.Compat ( src/Control/Monad/ST/Unsafe/Compat.hs, interpreted )
[ 16 of 122] Compiling Control.Monad.ST.Unsafe.Compat.Repl ( src/Control/Monad/ST/Unsafe/Compat/Repl.hs, interpreted )
[ 17 of 122] Compiling Data.Bifoldable.Compat ( src/Data/Bifoldable/Compat.hs, interpreted )
[ 18 of 122] Compiling Data.Bifoldable.Compat.Repl ( src/Data/Bifoldable/Compat/Repl.hs, interpreted )
[ 19 of 122] Compiling Data.Bifunctor.Compat ( src/Data/Bifunctor/Compat.hs, interpreted )
[ 20 of 122] Compiling Data.Bifunctor.Compat.Repl ( src/Data/Bifunctor/Compat/Repl.hs, interpreted )
[ 21 of 122] Compiling Data.Bitraversable.Compat ( src/Data/Bitraversable/Compat.hs, interpreted )
[ 22 of 122] Compiling Data.Bitraversable.Compat.Repl ( src/Data/Bitraversable/Compat/Repl.hs, interpreted )
[ 23 of 122] Compiling Data.Bits.Compat ( src/Data/Bits/Compat.hs, interpreted )
[ 24 of 122] Compiling Data.Bits.Compat.Repl ( src/Data/Bits/Compat/Repl.hs, interpreted )
[ 25 of 122] Compiling Data.Bool.Compat ( src/Data/Bool/Compat.hs, interpreted )
[ 26 of 122] Compiling Data.Bool.Compat.Repl ( src/Data/Bool/Compat/Repl.hs, interpreted )
[ 27 of 122] Compiling Data.Complex.Compat ( src/Data/Complex/Compat.hs, interpreted )
[ 28 of 122] Compiling Data.Complex.Compat.Repl ( src/Data/Complex/Compat/Repl.hs, interpreted )
[ 29 of 122] Compiling Data.Either.Compat ( src/Data/Either/Compat.hs, interpreted )
[ 30 of 122] Compiling Data.Either.Compat.Repl ( src/Data/Either/Compat/Repl.hs, interpreted )
[ 31 of 122] Compiling Data.Foldable.Compat ( src/Data/Foldable/Compat.hs, interpreted )
[ 32 of 122] Compiling Data.Foldable.Compat.Repl ( src/Data/Foldable/Compat/Repl.hs, interpreted )
[ 33 of 122] Compiling Data.Function.Compat ( src/Data/Function/Compat.hs, interpreted )
[ 34 of 122] Compiling Data.Function.Compat.Repl ( src/Data/Function/Compat/Repl.hs, interpreted )
[ 35 of 122] Compiling Data.Functor.Compat ( src/Data/Functor/Compat.hs, interpreted )
[ 36 of 122] Compiling Data.Functor.Compat.Repl ( src/Data/Functor/Compat/Repl.hs, interpreted )
[ 37 of 122] Compiling Data.Functor.Compose.Compat ( src/Data/Functor/Compose/Compat.hs, interpreted )
[ 38 of 122] Compiling Data.Functor.Compose.Compat.Repl ( src/Data/Functor/Compose/Compat/Repl.hs, interpreted )
[ 39 of 122] Compiling Data.Functor.Const.Compat ( src/Data/Functor/Const/Compat.hs, interpreted )
[ 40 of 122] Compiling Data.Functor.Const.Compat.Repl ( src/Data/Functor/Const/Compat/Repl.hs, interpreted )
[ 41 of 122] Compiling Data.Functor.Contravariant.Compat ( src/Data/Functor/Contravariant/Compat.hs, interpreted )
[ 42 of 122] Compiling Data.Functor.Contravariant.Compat.Repl ( src/Data/Functor/Contravariant/Compat/Repl.hs, interpreted )
[ 43 of 122] Compiling Data.Functor.Identity.Compat ( src/Data/Functor/Identity/Compat.hs, interpreted )
[ 44 of 122] Compiling Data.Functor.Identity.Compat.Repl ( src/Data/Functor/Identity/Compat/Repl.hs, interpreted )
[ 45 of 122] Compiling Data.Functor.Product.Compat ( src/Data/Functor/Product/Compat.hs, interpreted )
[ 46 of 122] Compiling Data.Functor.Product.Compat.Repl ( src/Data/Functor/Product/Compat/Repl.hs, interpreted )
[ 47 of 122] Compiling Data.Functor.Sum.Compat ( src/Data/Functor/Sum/Compat.hs, interpreted )
[ 48 of 122] Compiling Data.Functor.Sum.Compat.Repl ( src/Data/Functor/Sum/Compat/Repl.hs, interpreted )
[ 49 of 122] Compiling Data.IORef.Compat ( src/Data/IORef/Compat.hs, interpreted )
[ 50 of 122] Compiling Data.IORef.Compat.Repl ( src/Data/IORef/Compat/Repl.hs, interpreted )
[ 51 of 122] Compiling Data.List.Compat ( src/Data/List/Compat.hs, interpreted )
[ 52 of 122] Compiling Data.List.Compat.Repl ( src/Data/List/Compat/Repl.hs, interpreted )
[ 53 of 122] Compiling Data.List.NonEmpty.Compat ( src/Data/List/NonEmpty/Compat.hs, interpreted )
[ 54 of 122] Compiling Data.List.NonEmpty.Compat.Repl ( src/Data/List/NonEmpty/Compat/Repl.hs, interpreted )
[ 55 of 122] Compiling Data.Monoid.Compat ( src/Data/Monoid/Compat.hs, interpreted )
[ 56 of 122] Compiling Data.Monoid.Compat.Repl ( src/Data/Monoid/Compat/Repl.hs, interpreted )
[ 57 of 122] Compiling Data.Proxy.Compat ( src/Data/Proxy/Compat.hs, interpreted )
[ 58 of 122] Compiling Data.Proxy.Compat.Repl ( src/Data/Proxy/Compat/Repl.hs, interpreted )
[ 59 of 122] Compiling Data.Ratio.Compat ( src/Data/Ratio/Compat.hs, interpreted )
[ 60 of 122] Compiling Data.Ratio.Compat.Repl ( src/Data/Ratio/Compat/Repl.hs, interpreted )
[ 61 of 122] Compiling Data.STRef.Compat ( src/Data/STRef/Compat.hs, interpreted )
[ 62 of 122] Compiling Data.STRef.Compat.Repl ( src/Data/STRef/Compat/Repl.hs, interpreted )
[ 63 of 122] Compiling Data.Semigroup.Compat ( src/Data/Semigroup/Compat.hs, interpreted )
^CInterrupted.
λ> :reload
[ 1 of 122] Compiling Control.Concurrent.Compat ( src/Control/Concurrent/Compat.hs, interpreted )
[ 2 of 122] Compiling Control.Concurrent.Compat.Repl ( src/Control/Concurrent/Compat/Repl.hs, interpreted )
[ 3 of 122] Compiling Control.Concurrent.MVar.Compat ( src/Control/Concurrent/MVar/Compat.hs, interpreted )
[ 4 of 122] Compiling Control.Concurrent.MVar.Compat.Repl ( src/Control/Concurrent/MVar/Compat/Repl.hs, interpreted )
[ 5 of 122] Compiling Control.Exception.Compat ( src/Control/Exception/Compat.hs, interpreted )
[ 6 of 122] Compiling Control.Exception.Compat.Repl ( src/Control/Exception/Compat/Repl.hs, interpreted )
[ 7 of 122] Compiling Control.Monad.Compat ( src/Control/Monad/Compat.hs, interpreted )
[ 8 of 122] Compiling Control.Monad.Compat.Repl ( src/Control/Monad/Compat/Repl.hs, interpreted )
[ 9 of 122] Compiling Control.Monad.Fail.Compat ( src/Control/Monad/Fail/Compat.hs, interpreted )
[ 10 of 122] Compiling Control.Monad.Fail.Compat.Repl ( src/Control/Monad/Fail/Compat/Repl.hs, interpreted )
[ 11 of 122] Compiling Control.Monad.IO.Class.Compat ( src/Control/Monad/IO/Class/Compat.hs, interpreted )
[ 12 of 122] Compiling Control.Monad.IO.Class.Compat.Repl ( src/Control/Monad/IO/Class/Compat/Repl.hs, interpreted )
[ 13 of 122] Compiling Control.Monad.ST.Lazy.Unsafe.Compat ( src/Control/Monad/ST/Lazy/Unsafe/Compat.hs, interpreted )
[ 14 of 122] Compiling Control.Monad.ST.Lazy.Unsafe.Compat.Repl ( src/Control/Monad/ST/Lazy/Unsafe/Compat/Repl.hs, interpreted )
[ 15 of 122] Compiling Control.Monad.ST.Unsafe.Compat ( src/Control/Monad/ST/Unsafe/Compat.hs, interpreted )
[ 16 of 122] Compiling Control.Monad.ST.Unsafe.Compat.Repl ( src/Control/Monad/ST/Unsafe/Compat/Repl.hs, interpreted )
[ 17 of 122] Compiling Data.Bifoldable.Compat ( src/Data/Bifoldable/Compat.hs, interpreted )
[ 18 of 122] Compiling Data.Bifoldable.Compat.Repl ( src/Data/Bifoldable/Compat/Repl.hs, interpreted )
[ 19 of 122] Compiling Data.Bifunctor.Compat ( src/Data/Bifunctor/Compat.hs, interpreted )
[ 20 of 122] Compiling Data.Bifunctor.Compat.Repl ( src/Data/Bifunctor/Compat/Repl.hs, interpreted )
[ 21 of 122] Compiling Data.Bitraversable.Compat ( src/Data/Bitraversable/Compat.hs, interpreted )
[ 22 of 122] Compiling Data.Bitraversable.Compat.Repl ( src/Data/Bitraversable/Compat/Repl.hs, interpreted )
[ 23 of 122] Compiling Data.Bits.Compat ( src/Data/Bits/Compat.hs, interpreted )
[ 24 of 122] Compiling Data.Bits.Compat.Repl ( src/Data/Bits/Compat/Repl.hs, interpreted )
[ 25 of 122] Compiling Data.Bool.Compat ( src/Data/Bool/Compat.hs, interpreted )
[ 26 of 122] Compiling Data.Bool.Compat.Repl ( src/Data/Bool/Compat/Repl.hs, interpreted )
[ 27 of 122] Compiling Data.Complex.Compat ( src/Data/Complex/Compat.hs, interpreted )
[ 28 of 122] Compiling Data.Complex.Compat.Repl ( src/Data/Complex/Compat/Repl.hs, interpreted )
[ 29 of 122] Compiling Data.Either.Compat ( src/Data/Either/Compat.hs, interpreted )
[ 30 of 122] Compiling Data.Either.Compat.Repl ( src/Data/Either/Compat/Repl.hs, interpreted )
[ 31 of 122] Compiling Data.Foldable.Compat ( src/Data/Foldable/Compat.hs, interpreted )
[ 32 of 122] Compiling Data.Foldable.Compat.Repl ( src/Data/Foldable/Compat/Repl.hs, interpreted )
[ 33 of 122] Compiling Data.Function.Compat ( src/Data/Function/Compat.hs, interpreted )
[ 34 of 122] Compiling Data.Function.Compat.Repl ( src/Data/Function/Compat/Repl.hs, interpreted )
[ 35 of 122] Compiling Data.Functor.Compat ( src/Data/Functor/Compat.hs, interpreted )
[ 36 of 122] Compiling Data.Functor.Compat.Repl ( src/Data/Functor/Compat/Repl.hs, interpreted )
[ 37 of 122] Compiling Data.Functor.Compose.Compat ( src/Data/Functor/Compose/Compat.hs, interpreted )
[ 38 of 122] Compiling Data.Functor.Compose.Compat.Repl ( src/Data/Functor/Compose/Compat/Repl.hs, interpreted )
[ 39 of 122] Compiling Data.Functor.Const.Compat ( src/Data/Functor/Const/Compat.hs, interpreted )
[ 40 of 122] Compiling Data.Functor.Const.Compat.Repl ( src/Data/Functor/Const/Compat/Repl.hs, interpreted )
[ 41 of 122] Compiling Data.Functor.Contravariant.Compat ( src/Data/Functor/Contravariant/Compat.hs, interpreted )
[ 42 of 122] Compiling Data.Functor.Contravariant.Compat.Repl ( src/Data/Functor/Contravariant/Compat/Repl.hs, interpreted )
[ 43 of 122] Compiling Data.Functor.Identity.Compat ( src/Data/Functor/Identity/Compat.hs, interpreted )
[ 44 of 122] Compiling Data.Functor.Identity.Compat.Repl ( src/Data/Functor/Identity/Compat/Repl.hs, interpreted )
[ 45 of 122] Compiling Data.Functor.Product.Compat ( src/Data/Functor/Product/Compat.hs, interpreted )
[ 46 of 122] Compiling Data.Functor.Product.Compat.Repl ( src/Data/Functor/Product/Compat/Repl.hs, interpreted )
[ 47 of 122] Compiling Data.Functor.Sum.Compat ( src/Data/Functor/Sum/Compat.hs, interpreted )
[ 48 of 122] Compiling Data.Functor.Sum.Compat.Repl ( src/Data/Functor/Sum/Compat/Repl.hs, interpreted )
[ 49 of 122] Compiling Data.IORef.Compat ( src/Data/IORef/Compat.hs, interpreted )
[ 50 of 122] Compiling Data.IORef.Compat.Repl ( src/Data/IORef/Compat/Repl.hs, interpreted )
[ 51 of 122] Compiling Data.List.Compat ( src/Data/List/Compat.hs, interpreted )
[ 52 of 122] Compiling Data.List.Compat.Repl ( src/Data/List/Compat/Repl.hs, interpreted )
[ 53 of 122] Compiling Data.List.NonEmpty.Compat ( src/Data/List/NonEmpty/Compat.hs, interpreted )
[ 54 of 122] Compiling Data.List.NonEmpty.Compat.Repl ( src/Data/List/NonEmpty/Compat/Repl.hs, interpreted )
[ 55 of 122] Compiling Data.Monoid.Compat ( src/Data/Monoid/Compat.hs, interpreted )
[ 56 of 122] Compiling Data.Monoid.Compat.Repl ( src/Data/Monoid/Compat/Repl.hs, interpreted )
[ 57 of 122] Compiling Data.Proxy.Compat ( src/Data/Proxy/Compat.hs, interpreted )
[ 58 of 122] Compiling Data.Proxy.Compat.Repl ( src/Data/Proxy/Compat/Repl.hs, interpreted )
[ 59 of 122] Compiling Data.Ratio.Compat ( src/Data/Ratio/Compat.hs, interpreted )
[ 60 of 122] Compiling Data.Ratio.Compat.Repl ( src/Data/Ratio/Compat/Repl.hs, interpreted )
[ 61 of 122] Compiling Data.STRef.Compat ( src/Data/STRef/Compat.hs, interpreted )
[ 62 of 122] Compiling Data.STRef.Compat.Repl ( src/Data/STRef/Compat/Repl.hs, interpreted )
[ 63 of 122] Compiling Data.Semigroup.Compat ( src/Data/Semigroup/Compat.hs, interpreted )
[ 64 of 122] Compiling Data.Semigroup.Compat.Repl ( src/Data/Semigroup/Compat/Repl.hs, interpreted )
[ 65 of 122] Compiling Data.String.Compat ( src/Data/String/Compat.hs, interpreted )
[ 66 of 122] Compiling Data.String.Compat.Repl ( src/Data/String/Compat/Repl.hs, interpreted )
[ 67 of 122] Compiling Data.Tuple.Compat ( src/Data/Tuple/Compat.hs, interpreted )
src/Data/Tuple/Compat.hs:19:1: warning: [-Wunused-imports]
The import of ‘GHC.Tuple’ is redundant
except perhaps to import instances from ‘GHC.Tuple’
To import instances alone, use: import GHC.Tuple()
|
19 | import GHC.Tuple (Solo(..))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[ 68 of 122] Compiling Data.Tuple.Compat.Repl ( src/Data/Tuple/Compat/Repl.hs, interpreted )
[ 69 of 122] Compiling Data.Type.Coercion.Compat ( src/Data/Type/Coercion/Compat.hs, interpreted )
[ 70 of 122] Compiling Data.Type.Coercion.Compat.Repl ( src/Data/Type/Coercion/Compat/Repl.hs, interpreted )
[ 71 of 122] Compiling Data.Type.Equality.Compat ( src/Data/Type/Equality/Compat.hs, interpreted )
[ 72 of 122] Compiling Data.Type.Equality.Compat.Repl ( src/Data/Type/Equality/Compat/Repl.hs, interpreted )
[ 73 of 122] Compiling Data.Version.Compat ( src/Data/Version/Compat.hs, interpreted )
[ 74 of 122] Compiling Data.Version.Compat.Repl ( src/Data/Version/Compat/Repl.hs, interpreted )
[ 75 of 122] Compiling Data.Void.Compat ( src/Data/Void/Compat.hs, interpreted )
[ 76 of 122] Compiling Data.Void.Compat.Repl ( src/Data/Void/Compat/Repl.hs, interpreted )
[ 77 of 122] Compiling Data.Word.Compat ( src/Data/Word/Compat.hs, interpreted )
[ 78 of 122] Compiling Data.Word.Compat.Repl ( src/Data/Word/Compat/Repl.hs, interpreted )
[ 79 of 122] Compiling Debug.Trace.Compat ( src/Debug/Trace/Compat.hs, interpreted )
[ 80 of 122] Compiling Debug.Trace.Compat.Repl ( src/Debug/Trace/Compat/Repl.hs, interpreted )
[ 81 of 122] Compiling Foreign.ForeignPtr.Compat ( src/Foreign/ForeignPtr/Compat.hs, interpreted )
[ 82 of 122] Compiling Foreign.ForeignPtr.Compat.Repl ( src/Foreign/ForeignPtr/Compat/Repl.hs, interpreted )
[ 83 of 122] Compiling Foreign.ForeignPtr.Safe.Compat ( src/Foreign/ForeignPtr/Safe/Compat.hs, interpreted )
[ 84 of 122] Compiling Foreign.ForeignPtr.Safe.Compat.Repl ( src/Foreign/ForeignPtr/Safe/Compat/Repl.hs, interpreted )
[ 85 of 122] Compiling Foreign.ForeignPtr.Unsafe.Compat ( src/Foreign/ForeignPtr/Unsafe/Compat.hs, interpreted )
[ 86 of 122] Compiling Foreign.ForeignPtr.Unsafe.Compat.Repl ( src/Foreign/ForeignPtr/Unsafe/Compat/Repl.hs, interpreted )
[ 87 of 122] Compiling Foreign.Marshal.Alloc.Compat ( src/Foreign/Marshal/Alloc/Compat.hs, interpreted )
[ 88 of 122] Compiling Foreign.Marshal.Alloc.Compat.Repl ( src/Foreign/Marshal/Alloc/Compat/Repl.hs, interpreted )
[ 89 of 122] Compiling Foreign.Marshal.Array.Compat ( src/Foreign/Marshal/Array/Compat.hs, interpreted )
[ 90 of 122] Compiling Foreign.Marshal.Array.Compat.Repl ( src/Foreign/Marshal/Array/Compat/Repl.hs, interpreted )
[ 91 of 122] Compiling Foreign.Marshal.Safe.Compat ( src/Foreign/Marshal/Safe/Compat.hs, interpreted )
[ 92 of 122] Compiling Foreign.Marshal.Safe.Compat.Repl ( src/Foreign/Marshal/Safe/Compat/Repl.hs, interpreted )
[ 93 of 122] Compiling Foreign.Marshal.Unsafe.Compat ( src/Foreign/Marshal/Unsafe/Compat.hs, interpreted )
[ 94 of 122] Compiling Foreign.Marshal.Unsafe.Compat.Repl ( src/Foreign/Marshal/Unsafe/Compat/Repl.hs, interpreted )
[ 95 of 122] Compiling Foreign.Marshal.Utils.Compat ( src/Foreign/Marshal/Utils/Compat.hs, interpreted )
[ 96 of 122] Compiling Foreign.Marshal.Compat ( src/Foreign/Marshal/Compat.hs, interpreted )
[ 97 of 122] Compiling Foreign.Marshal.Compat.Repl ( src/Foreign/Marshal/Compat/Repl.hs, interpreted )
[ 98 of 122] Compiling Foreign.Compat ( src/Foreign/Compat.hs, interpreted )
[ 99 of 122] Compiling Foreign.Compat.Repl ( src/Foreign/Compat/Repl.hs, interpreted )
[100 of 122] Compiling Foreign.Marshal.Utils.Compat.Repl ( src/Foreign/Marshal/Utils/Compat/Repl.hs, interpreted )
[101 of 122] Compiling Numeric.Compat ( src/Numeric/Compat.hs, interpreted )
[102 of 122] Compiling Numeric.Compat.Repl ( src/Numeric/Compat/Repl.hs, interpreted )
[103 of 122] Compiling Numeric.Natural.Compat ( src/Numeric/Natural/Compat.hs, interpreted )
[104 of 122] Compiling Numeric.Natural.Compat.Repl ( src/Numeric/Natural/Compat/Repl.hs, interpreted )
[105 of 122] Compiling Prelude.Compat ( src/Prelude/Compat.hs, interpreted )
[106 of 122] Compiling Prelude.Compat.Repl ( src/Prelude/Compat/Repl.hs, interpreted )
[107 of 122] Compiling System.Environment.Compat ( src/System/Environment/Compat.hs, interpreted )
[108 of 122] Compiling System.Environment.Compat.Repl ( src/System/Environment/Compat/Repl.hs, interpreted )
[109 of 122] Compiling System.Exit.Compat ( src/System/Exit/Compat.hs, interpreted )
[110 of 122] Compiling System.Exit.Compat.Repl ( src/System/Exit/Compat/Repl.hs, interpreted )
[111 of 122] Compiling System.IO.Compat ( src/System/IO/Compat.hs, interpreted )
[112 of 122] Compiling System.IO.Compat.Repl ( src/System/IO/Compat/Repl.hs, interpreted )
[113 of 122] Compiling System.IO.Error.Compat ( src/System/IO/Error/Compat.hs, interpreted )
[114 of 122] Compiling System.IO.Error.Compat.Repl ( src/System/IO/Error/Compat/Repl.hs, interpreted )
[115 of 122] Compiling System.IO.Unsafe.Compat ( src/System/IO/Unsafe/Compat.hs, interpreted )
[116 of 122] Compiling System.IO.Unsafe.Compat.Repl ( src/System/IO/Unsafe/Compat/Repl.hs, interpreted )
[117 of 122] Compiling Text.Read.Compat ( src/Text/Read/Compat.hs, interpreted )
[118 of 122] Compiling Text.Read.Compat.Repl ( src/Text/Read/Compat/Repl.hs, interpreted )
[119 of 122] Compiling Text.Read.Lex.Compat ( src/Text/Read/Lex/Compat.hs, interpreted )
[120 of 122] Compiling Text.Read.Lex.Compat.Repl ( src/Text/Read/Lex/Compat/Repl.hs, interpreted )
[121 of 122] Compiling Type.Reflection.Compat ( src/Type/Reflection/Compat.hs, interpreted )
[122 of 122] Compiling Type.Reflection.Compat.Repl ( src/Type/Reflection/Compat/Repl.hs, interpreted )
Notice that when I Ctrl-C'd, around 63 or so modules had loaded. After I invoke :reload
, however, all of the previously built 63 modules are re-built! This seems like wasted work. This is especially painful in larger projects like lens
, where the modules take longer to compile.