Installation of Hakaru does not work on three independent computers (two Macs and one Linux machine).

I have just spent 10 hours trying to install Hakaru.
On versions 0.1.4 and 0.6.0, after correctly following the instructions on https://hakaru-dev.github.io/intro/installation/, I am repeatedly getting issues. This is on two different computers running the latest version of OSX (Catalina Version 10.15.7 (19H2)). GHC version 8.10.2 and Cabal version <IP_ADDRESS>.
The first issue is this:
$ cabal install -j --only-dependencies --enable-tests
cabal: --enable-tests was specified, but tests can't be enabled in a remote package
Any ideas on what's going on here?
How can I install this software! Has anybody even installed this recently at all?
After encountering this issue, I have run into other issues too when trying to proceed, but hopefully we can take this one step at a time and try and resolve the issue.
If I try and proceed with just cabal install, then I get:
$ cabal install
cabal: Could not resolve dependencies:
[__0] next goal: hakaru (user goal)
[__0] rejecting: hakaru-0.1.4, hakaru-0.1.3, hakaru-0.1.2, hakaru-0.1.1,
hakaru-0.1 (constraint from user target requires ==0.7.0)
[__0] trying: hakaru-0.7.0
[__1] next goal: base (dependency of hakaru)
[__1] rejecting: base-<IP_ADDRESS>/installed-<IP_ADDRESS> (conflict: hakaru =>
ghc-prim>=0.3 && <0.6, base => ghc-prim==0.6.1/installed-0.6.1)
[__1] rejecting: base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>,
base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>,
base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>,
base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>,
base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>,
base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>, base-<IP_ADDRESS>,
base-<IP_ADDRESS> (constraint from non-upgradeable package requires installed
instance)
[__1] fail (backjumping, conflict set: base, hakaru)
After searching the rest of the dependency tree exhaustively, these were the
goals I've had most trouble fulfilling: base, hakaru
On Linux (Fedora), I tried installing Hakaru only to run into a different issue:
$ cabal configure --enable-tests
Resolving dependencies...
Configuring hakaru-0.7.0...
Warning: The package has an extraneous version range for a dependency on an
internal library: hakaru >=0.3, hakaru >=0.3, hakaru >=0.3, hakaru >=0.3,
hakaru >=0.3, hakaru >=0.3, hakaru >=0.3, hakaru >=0.3, hakaru >=0.3, hakaru

=0.3, hakaru >=0.3, hakaru >=0.3. This version range includes the current
package but isn't needed as the current package's library will always be used.
linux[~/Work/hakaru]$ cabal build
Preprocessing test suite 'system-testsuite' for hakaru-0.7.0..
Building test suite 'system-testsuite' for hakaru-0.7.0..

haskell/Language/Hakaru/Syntax/Transform.hs:11:14: warning:
-XOverlappingInstances is deprecated: instead use per-instance pragmas OVERLAPPING/OVERLAPPABLE/OVERLAPS
|
11 |            , OverlappingInstances
|              ^^^^^^^^^^^^^^^^^^^^
.
.
.
.
[14 of 69] Compiling Language.Hakaru.Syntax.ABT ( haskell/Language/Hakaru/Syntax/ABT.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Syntax/ABT.o )
haskell/Language/Hakaru/Syntax/ABT.hs:697:1: warning: [-Wunused-top-binds]
Defined but not used: ‘freshen’
|
697 | freshen x xs
| ^^^^^^^
[15 of 69] Compiling Language.Hakaru.Syntax.Transform ( haskell/Language/Hakaru/Syntax/Transform.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Syntax/Transform.o )
haskell/Language/Hakaru/Syntax/Transform.hs:49:1: warning: [-Wunused-imports]
The import of ‘Language.Hakaru.Syntax.Variable’ is redundant
except perhaps to import instances from ‘Language.Hakaru.Syntax.Variable’
To import instances alone, use: import Language.Hakaru.Syntax.Variable()
|
49 | import Language.Hakaru.Syntax.Variable
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Language/Hakaru/Syntax/Transform.hs:94:8: warning: [-Wunticked-promoted-constructors]
Unticked promoted constructor: ‘:->’.
Use ‘':->’ instead of ‘:->’.
|
94 |       (a :-> 'HMeasure b)
|        ^^^^^^^^^^^^^^^^^
[16 of 69] Compiling Language.Hakaru.Syntax.DatumABT ( haskell/Language/Hakaru/Syntax/DatumABT.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Syntax/DatumABT.o )
[17 of 69] Compiling Language.Hakaru.Syntax.AST ( haskell/Language/Hakaru/Syntax/AST.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Syntax/AST.o )
[18 of 69] Compiling Language.Hakaru.Syntax.DatumCase ( haskell/Language/Hakaru/Syntax/DatumCase.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Syntax/DatumCase.o )
[19 of 69] Compiling Language.Hakaru.Syntax.AST.Sing ( haskell/Language/Hakaru/Syntax/AST/Sing.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Syntax/AST/Sing.o )
[20 of 69] Compiling Language.Hakaru.Syntax.TypeOf ( haskell/Language/Hakaru/Syntax/TypeOf.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Syntax/TypeOf.o )
[21 of 69] Compiling Language.Hakaru.Syntax.Prelude ( haskell/Language/Hakaru/Syntax/Prelude.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Syntax/Prelude.o )
[22 of 69] Compiling Language.Hakaru.Syntax.Gensym ( haskell/Language/Hakaru/Syntax/Gensym.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Syntax/Gensym.o )
haskell/Language/Hakaru/Syntax/Gensym.hs:34:8: warning: [-Wsimplifiable-class-constraints]
• The constraint ‘Gensym m’ matches an instance declaration
instance (Monad m, MonadState Nat m) => Gensym m
-- Defined at haskell/Language/Hakaru/Syntax/Gensym.hs:27:10
This makes type inference for inner bindings fragile;
either use MonoLocalBinds, or simplify it using the instance
• In the type signature:
freshVar :: (Functor m, Gensym m) =>
Variable (a :: Hakaru) -> m (Variable a)
|
34 |     :: (Functor m, Gensym m)
|        ^^^^^^^^^^^^^^^^^^^^^...
haskell/Language/Hakaru/Syntax/Gensym.hs:39:8: warning: [-Wsimplifiable-class-constraints]
• The constraint ‘Gensym m’ matches an instance declaration
instance (Monad m, MonadState Nat m) => Gensym m
-- Defined at haskell/Language/Hakaru/Syntax/Gensym.hs:27:10
This makes type inference for inner bindings fragile;
either use MonoLocalBinds, or simplify it using the instance
• In the type signature:
varOfType :: (Functor m, Gensym m) =>
Sing (a :: Hakaru) -> m (Variable a)
|
39 |     :: (Functor m, Gensym m)
|        ^^^^^^^^^^^^^^^^^^^^^...
haskell/Language/Hakaru/Syntax/Gensym.hs:44:8: warning: [-Wsimplifiable-class-constraints]
• The constraint ‘Gensym m’ matches an instance declaration
instance (Monad m, MonadState Nat m) => Gensym m
-- Defined at haskell/Language/Hakaru/Syntax/Gensym.hs:27:10
This makes type inference for inner bindings fragile;
either use MonoLocalBinds, or simplify it using the instance
• In the type signature:
varForExpr :: (Functor m, Gensym m, ABT Term abt) =>
abt '[] a -> m (Variable a)
|
44 |     :: (Functor m, Gensym m, ABT Term abt)
|        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...
........
..
.
.
.
.
.
haskell/Tests/RoundTrip.hs:661:54: warning: [-Wunused-matches]
Defined but not used: ‘x10’
|
661 |                pair (withWeight x7 $ x8 unpair \x9 x10 -> x9)
|                                                      ^^^
haskell/Tests/RoundTrip.hs:663:48: warning: [-Wunused-matches]
Defined but not used: ‘x10’
|
663 |                      zero + x7 * (x8 unpair \x10 x11 -> x11) app x9)) $ \x7 ->
|                                                ^^^
haskell/Tests/RoundTrip.hs:664:48: warning: [-Wunused-matches]
Defined but not used: ‘x9’
|
664 |          pair (withWeight x6 $ x7 unpair \x8 x9 -> x8)
|                                                ^^
haskell/Tests/RoundTrip.hs:665:55: warning: [-Wunused-matches]
Defined but not used: ‘x9’
|
665 |               (lam $ \x8 -> zero + x6 * (x7 unpair \x9 x10 -> x10) app x8))
|                                                       ^^
haskell/Tests/RoundTrip.hs:667:28: warning: [-Wunused-matches]
Defined but not used: ‘x2’
|
667 |         app x1 unpair \x2 x3 ->
|                            ^^
haskell/Tests/RoundTrip.hs:668:26: warning: [-Wunused-matches]
Defined but not used: ‘x4’
|
668 |         x3 app (lam $ \x4 -> one)) $ \x1 ->
|                          ^^
[64 of 69] Compiling Tests.Relationships ( haskell/Tests/Relationships.hs, dist/build/system-testsuite/system-testsuite-tmp/Tests/Relationships.o )
haskell/Tests/Relationships.hs:11:1: warning: [-Wunused-imports]
The import of ‘., asTypeOf, id’ from module ‘Prelude’ is redundant
|
11 | import Prelude ((.), id, ($), asTypeOf)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Tests/Relationships.hs:32:56: warning: [-Wunused-matches]
Defined but not used: ‘x’
|
.
.
.
.
.
.
.
.
.
.
.
Preprocessing executable 'momiji' for hakaru-0.7.0..
Building executable 'momiji' for hakaru-0.7.0..
[1 of 1] Compiling Main             ( commands/Momiji.hs, dist/build/momiji/momiji-tmp/Main.o )
Linking dist/build/momiji/momiji ...
Preprocessing executable 'normalize' for hakaru-0.7.0..
Building executable 'normalize' for hakaru-0.7.0..
[1 of 1] Compiling Main             ( commands/Normalize.hs, dist/build/normalize/normalize-tmp/Main.o )
Linking dist/build/normalize/normalize ...
Preprocessing executable 'pretty' for hakaru-0.7.0..
Building executable 'pretty' for hakaru-0.7.0..
[1 of 1] Compiling Main             ( commands/Pretty.hs, dist/build/pretty/pretty-tmp/Main.o )
commands/Pretty.hs:21:1: warning: [-Wunused-imports]
The import of ‘Data.Monoid’ is redundant
except perhaps to import instances from ‘Data.Monoid’
To import instances alone, use: import Data.Monoid()
|
21 | import           Data.Monoid
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Linking dist/build/pretty/pretty ...
Preprocessing executable 'prettyinternal' for hakaru-0.7.0..
Building executable 'prettyinternal' for hakaru-0.7.0..
[1 of 1] Compiling Main             ( commands/PrettyInternal.hs, dist/build/prettyinternal/prettyinternal-tmp/Main.o )
commands/PrettyInternal.hs:12:1: warning: [-Wunused-imports]
The import of ‘Data.Monoid’ is redundant
except perhaps to import instances from ‘Data.Monoid’
To import instances alone, use: import Data.Monoid()
|
12 | import           Data.Monoid
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Linking dist/build/prettyinternal/prettyinternal ...
Preprocessing executable 'summary' for hakaru-0.7.0..
Building executable 'summary' for hakaru-0.7.0..
[1 of 1] Compiling Main             ( commands/Summary.hs, dist/build/summary/summary-tmp/Main.o )
Linking dist/build/summary/summary ...
linux[~/Work/hakaru]$ cabal install
Resolving dependencies...
Configuring hakaru-0.7.0...
Building hakaru-0.7.0...
Installed hakaru-0.7.0
Warning: could not create symlinks in /users/usernamez/.cabal/bin for hakaru,
compile, summary, hk-maple, density, disintegrate, pretty, prettyinternal,
momiji, normalize, hkc, mh because the files exist there already and are not
managed by cabal. You can create symlinks for these executables manually if
you wish. The executable files have been installed at
/auto/users/usernamez/.cabal/bin/hakaru, /auto/users/usernamez/.cabal/bin/compile,
/auto/users/usernamez/.cabal/bin/summary, /auto/users/usernamez/.cabal/bin/hk-maple,
/auto/users/usernamez/.cabal/bin/density,
/auto/users/usernamez/.cabal/bin/disintegrate,
/auto/users/usernamez/.cabal/bin/pretty,
/auto/users/usernamez/.cabal/bin/prettyinternal,
/auto/users/usernamez/.cabal/bin/momiji, /auto/users/usernamez/.cabal/bin/normalize,
/auto/users/usernamez/.cabal/bin/hkc, /auto/users/usernamez/.cabal/bin/mh
linux[~/Work/hakaru]$
before running test:
$ cabal test
cabal: Cannot process the test suite 'system-testsuite' because test suites
are not enabled. Run configure with the flag --enable-tests

It looks like we need to update Hakaru to work on the GHC 8.10
Let me look into what that entails

Thanks, I also was using GHC 8.10.4 for the Linux distribution.

Alright, I've dug in a bit, and I think there are actually more errors than even you have shared. I think I can get this working in not too long.

Basically hakaru, indentation-core and indentation-parsec all needed the bounds on their dependencies to be loosened. I'll ask the author of the indentation packages to do that. I have pushed changes to make hakaru build and run tests.
Longer term Hakaru's parser should use Megaparsec to not rely on other indentation packages.

Okay, that's good to know. Thank you for looking into this. Please comment on this issue when you believe that Hakaru is working again and the issues have been fixed.

Can you try now?
On Sat, Oct 24, 2020, 11:55 anonymous-netizen<EMAIL_ADDRESS>wrote:

Okay, that's good to know. Thank you for looking into this. Please comment
on this issue when you believe that Hakaru is working again and the issues
have been fixed.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/hakaru-dev/hakaru/issues/206#issuecomment-715897778,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAACCUJRL7KUJLDLHL5KH33SMKXDJANCNFSM4SWTARDQ
.

I do plan to also try this on a windows computer. What operating system are you using?
On both OSX computers, I get the following error message after doing the clone and update:
$ cabal install -j --only-dependencies --enable-tests
cabal: --enable-tests was specified, but tests can't be enabled in a remote
package
What do you suggest I do? Shall I remove the flags?
On the Linux machine, I get the following error messages:
$ cabal configure --enable-tests
Resolving dependencies...
Configuring hakaru-0.7.0...
Warning: The package has an extraneous version range for a dependency on an
internal library: hakaru >=0.3, hakaru >=0.3, hakaru >=0.3, hakaru >=0.3,
hakaru >=0.3, hakaru >=0.3, hakaru >=0.3, hakaru >=0.3, hakaru >=0.3, hakaru

=0.3, hakaru >=0.3, hakaru >=0.3. This version range includes the current
package but isn't needed as the current package's library will always be used.

$ cabal test
cabal: Cannot process the test suite 'system-testsuite' because test suites
are not enabled. Run configure with the flag --enable-tests
as well as similar errors when building i.e.
haskell/Language/Hakaru/Syntax/Transform.hs:11:14: warning:
-XOverlappingInstances is deprecated: instead use per-instance pragmas OVERLAPPING/OVERLAPPABLE/OVERLAPS
|
11 |            , OverlappingInstances
|              ^^^^^^^^^^^^^^^^^^^^
[43 of 69] Compiling Language.Hakaru.Syntax.TypeCheck ( haskell/Language/Hakaru/Syntax/TypeCheck.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Syntax/TypeCheck.o )
haskell/Language/Hakaru/Syntax/TypeCheck.hs:45:1: warning: [-Wunused-imports]
The import of ‘Data.Proxy’ is redundant
except perhaps to import instances from ‘Data.Proxy’
To import instances alone, use: import Data.Proxy()
|
45 | import           Data.Proxy            (KProxy(..))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Language/Hakaru/Syntax/TypeCheck.hs:46:1: warning: [-Wunused-imports]
The import of ‘Text’ from module ‘Data.Text’ is redundant
|
46 | import           Data.Text             (pack, Text())
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Language/Hakaru/Syntax/TypeCheck.hs:53:1: warning: [-Wunused-imports]
The qualified import of ‘Data.Vector’ is redundant
except perhaps to import instances from ‘Data.Vector’
To import instances alone, use: import Data.Vector()
|
53 | import qualified Data.Vector           as V
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Language/Hakaru/Syntax/TypeCheck.hs:64:1: warning: [-Wunused-imports]
The import of ‘HBool’
from module ‘Language.Hakaru.Types.DataKind’ is redundant
|
64 | import Language.Hakaru.Types.DataKind (Hakaru(..), HData', HBool)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Language/Hakaru/Syntax/TypeCheck.hs:67:1: warning: [-Wunused-imports]
The import of ‘HEq, HOrd, HSemiring, hEq_Sing, hFractional_Sing,
hOrd_Sing, hRing_Sing’
from module ‘Language.Hakaru.Types.HClasses’ is redundant
.
.
.
.
.

Those look like all warnings. Would you be able to attach the full log?
On Sat, Oct 24, 2020, 13:11 anonymous-netizen<EMAIL_ADDRESS>wrote:

I do plan to also try this on a windows computer. What operating system
are you using?
On both OSX computers, I get the following error message after doing the
clone and update:
$ cabal install -j --only-dependencies --enable-tests
cabal: --enable-tests was specified, but tests can't be enabled in a remote
package
What do you suggest I do? Shall I remove the flags?
On the Linux machine, I get the following error messages:
$ cabal configure --enable-tests
Resolving dependencies...
Configuring hakaru-0.7.0...
Warning: The package has an extraneous version range for a dependency on an
internal library: hakaru >=0.3, hakaru >=0.3, hakaru >=0.3, hakaru >=0.3,
hakaru >=0.3, hakaru >=0.3, hakaru >=0.3, hakaru >=0.3, hakaru >=0.3,
hakaru
=0.3, hakaru >=0.3, hakaru >=0.3. This version range includes the current
package but isn't needed as the current package's library will always be
used.
$ cabal test
cabal: Cannot process the test suite 'system-testsuite' because test suites
are not enabled. Run configure with the flag --enable-tests
as well as similar errors when building i.e.
haskell/Language/Hakaru/Syntax/Transform.hs:11:14: warning:
-XOverlappingInstances is deprecated: instead use per-instance pragmas
OVERLAPPING/OVERLAPPABLE/OVERLAPS
|
11 | , OverlappingInstances
| ^^^^^^^^^^^^^^^^^^^^
[43 of 69] Compiling Language.Hakaru.Syntax.TypeCheck (
haskell/Language/Hakaru/Syntax/TypeCheck.hs,
dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Syntax/TypeCheck.o
)
haskell/Language/Hakaru/Syntax/TypeCheck.hs:45:1: warning:
[-Wunused-imports]
The import of ‘Data.Proxy’ is redundant
except perhaps to import instances from ‘Data.Proxy’
To import instances alone, use: import Data.Proxy()
|
45 | import Data.Proxy (KProxy(..))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Language/Hakaru/Syntax/TypeCheck.hs:46:1: warning:
[-Wunused-imports]
The import of ‘Text’ from module ‘Data.Text’ is redundant
|
46 | import Data.Text (pack, Text())
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Language/Hakaru/Syntax/TypeCheck.hs:53:1: warning:
[-Wunused-imports]
The qualified import of ‘Data.Vector’ is redundant
except perhaps to import instances from ‘Data.Vector’
To import instances alone, use: import Data.Vector()
|
53 | import qualified Data.Vector as V
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Language/Hakaru/Syntax/TypeCheck.hs:64:1: warning:
[-Wunused-imports]
The import of ‘HBool’
from module ‘Language.Hakaru.Types.DataKind’ is redundant
|
64 | import Language.Hakaru.Types.DataKind (Hakaru(..), HData', HBool)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Language/Hakaru/Syntax/TypeCheck.hs:67:1: warning:
[-Wunused-imports]
The import of ‘HEq, HOrd, HSemiring, hEq_Sing, hFractional_Sing,
hOrd_Sing, hRing_Sing’
from module ‘Language.Hakaru.Types.HClasses’ is redundant
.
.
.
.
.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/hakaru-dev/hakaru/issues/206#issuecomment-715906033,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAACCUNBKVB6WODQTAWL2RDSMK77DANCNFSM4SWTARDQ
.

The OSX installation message seems more like an error than a warning no?
On the linux machine, the full log is this:
$ cabal build
Preprocessing test suite 'system-testsuite' for hakaru-0.7.0..
Building test suite 'system-testsuite' for hakaru-0.7.0..

haskell/Language/Hakaru/Syntax/Transform.hs:11:14: warning:
    -XOverlappingInstances is deprecated: instead use per-instance pragmas OVERLAPPING/OVERLAPPABLE/OVERLAPS
   |
11 |            , OverlappingInstances
   |              ^^^^^^^^^^^^^^^^^^^^
[43 of 69] Compiling Language.Hakaru.Syntax.TypeCheck ( haskell/Language/Hakaru/Syntax/TypeCheck.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Syntax/TypeCheck.o )

haskell/Language/Hakaru/Syntax/TypeCheck.hs:45:1: warning: [-Wunused-imports]
    The import of ‘Data.Proxy’ is redundant
      except perhaps to import instances from ‘Data.Proxy’
    To import instances alone, use: import Data.Proxy()
   |
45 | import           Data.Proxy            (KProxy(..))
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:46:1: warning: [-Wunused-imports]
    The import of ‘Text’ from module ‘Data.Text’ is redundant
   |
46 | import           Data.Text             (pack, Text())
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:53:1: warning: [-Wunused-imports]
    The qualified import of ‘Data.Vector’ is redundant
      except perhaps to import instances from ‘Data.Vector’
    To import instances alone, use: import Data.Vector()
   |
53 | import qualified Data.Vector           as V
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:64:1: warning: [-Wunused-imports]
    The import of ‘HBool’
    from module ‘Language.Hakaru.Types.DataKind’ is redundant
   |
64 | import Language.Hakaru.Types.DataKind (Hakaru(..), HData', HBool)
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:67:1: warning: [-Wunused-imports]
    The import of ‘HEq, HOrd, HSemiring, hEq_Sing, hFractional_Sing,
                   hOrd_Sing, hRing_Sing’
    from module ‘Language.Hakaru.Types.HClasses’ is redundant
   |
67 | import Language.Hakaru.Types.HClasses
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

haskell/Language/Hakaru/Syntax/TypeCheck.hs:79:1: warning: [-Wunused-imports]
    The import of ‘Language.Hakaru.Pretty.Concrete’ is redundant
      except perhaps to import instances from ‘Language.Hakaru.Pretty.Concrete’
    To import instances alone, use: import Language.Hakaru.Pretty.Concrete()
   |
79 | import Language.Hakaru.Pretty.Concrete (prettyType, prettyTypeT)
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:198:7: warning: [-Wincomplete-patterns]
    Pattern match(es) are non-exhaustive
    In a case alternative: Patterns not matched: (MH, _)
    |
198 |       case (tr, es) of
    |       ^^^^^^^^^^^^^^^^...

haskell/Language/Hakaru/Syntax/TypeCheck.hs:524:19: warning: [-Wname-shadowing]
    This binding for ‘t’ shadows the existing binding
      bound at haskell/Language/Hakaru/Syntax/TypeCheck.hs:317:19
    |
524 |        U.InjTyped t     -> let t' = t in return $ TypedAST (typeOf t') t'
    |                   ^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:534:18: warning: [-Wunused-matches]
    Defined but not used: ‘sourceSpan’
    |
534 |   inferTransform sourceSpan
    |                  ^^^^^^^^^^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:544:18: warning: [-Wunused-matches]
    Defined but not used: ‘sourceSpan’
    |
544 |   inferTransform sourceSpan
    |                  ^^^^^^^^^^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:554:18: warning: [-Wunused-matches]
    Defined but not used: ‘sourceSpan’
    |
554 |   inferTransform sourceSpan
    |                  ^^^^^^^^^^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:569:18: warning: [-Wunused-matches]
    Defined but not used: ‘sourceSpan’
    |
569 |   inferTransform sourceSpan
    |                  ^^^^^^^^^^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:579:18: warning: [-Wunused-matches]
    Defined but not used: ‘sourceSpan’
    |
579 |   inferTransform sourceSpan
    |                  ^^^^^^^^^^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:585:18: warning: [-Wunused-matches]
    Defined but not used: ‘sourceSpan’
    |
585 |   inferTransform sourceSpan
    |                  ^^^^^^^^^^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:591:18: warning: [-Wunused-matches]
    Defined but not used: ‘sourceSpan’
    |
591 |   inferTransform sourceSpan
    |                  ^^^^^^^^^^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:1146:25: warning: [-Wname-shadowing]
    This binding for ‘r’ shadows the existing binding
      bound at haskell/Language/Hakaru/Syntax/TypeCheck.hs:1142:21
     |
1146 |                         r <- try (do TypedAST t p <- inferType e
     |                         ^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:1146:47: warning: [-Wname-shadowing]
    This binding for ‘t’ shadows the existing binding
      bound at haskell/Language/Hakaru/Syntax/TypeCheck.hs:1065:21
     |
1146 |                         r <- try (do TypedAST t p <- inferType e
     |                                               ^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:1156:25: warning: [-Wname-shadowing]
    This binding for ‘bad’ shadows the existing binding
      bound at haskell/Language/Hakaru/Syntax/TypeCheck.hs:1153:38
     |
1156 |                         bad <- checkOrUnsafeCoerce sourceSpan bad typ typ0
     |                         ^^^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:1244:20: warning: [-Wname-shadowing]
    This binding for ‘t’ shadows the existing binding
      bound at haskell/Language/Hakaru/Syntax/TypeCheck.hs:1065:21
     |
1244 |         U.InjTyped t ->
     |                    ^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:1305:20: warning: [-Wunused-matches]
    Defined but not used: ‘sourceSpan’
     |
1305 |     checkTransform sourceSpan typ0
     |                    ^^^^^^^^^^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:1311:20: warning: [-Wunused-matches]
    Defined but not used: ‘sourceSpan’
     |
1311 |     checkTransform sourceSpan typ0
     |                    ^^^^^^^^^^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:1317:20: warning: [-Wunused-matches]
    Defined but not used: ‘sourceSpan’
     |
1317 |     checkTransform sourceSpan typ0
     |                    ^^^^^^^^^^
[44 of 69] Compiling Language.Hakaru.Parser.Parser ( haskell/Language/Hakaru/Parser/Parser.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Parser/Parser.o )
[45 of 69] Compiling Language.Hakaru.Parser.Maple ( haskell/Language/Hakaru/Parser/Maple.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Parser/Maple.o )
[46 of 69] Compiling Language.Hakaru.Parser.Import ( haskell/Language/Hakaru/Parser/Import.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Parser/Import.o )
[47 of 69] Compiling Language.Hakaru.Command ( haskell/Language/Hakaru/Command.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Command.o )

haskell/Language/Hakaru/Command.hs:23:1: warning: [-Wunused-imports]
    The import of ‘System.Environment’ is redundant
      except perhaps to import instances from ‘System.Environment’
    To import instances alone, use: import System.Environment()
   |
23 | import           System.Environment (getArgs)
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[48 of 69] Compiling Language.Hakaru.Evaluation.PEvalMonad ( haskell/Language/Hakaru/Evaluation/PEvalMonad.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Evaluation/PEvalMonad.o )

haskell/Language/Hakaru/Evaluation/PEvalMonad.hs:144:1: warning: [-Wunused-top-binds]
    Defined but not used: ‘mapPPure’
    |
144 | mapPPure f (PPure e) = PPure (f e)
    | ^^^^^^^^

haskell/Language/Hakaru/Evaluation/PEvalMonad.hs:622:14: warning: [-Wunused-matches]
    Defined but not used: ‘f’
    |
622 | emitCaseWith f e bs = do
    |              ^

haskell/Language/Hakaru/Evaluation/PEvalMonad.hs:622:16: warning: [-Wunused-matches]
    Defined but not used: ‘e’
    |
622 | emitCaseWith f e bs = do
    |                ^

haskell/Language/Hakaru/Evaluation/PEvalMonad.hs:622:18: warning: [-Wunused-matches]
    Defined but not used: ‘bs’
    |
622 | emitCaseWith f e bs = do
    |                  ^^

haskell/Language/Hakaru/Evaluation/PEvalMonad.hs:647:1: warning: [-Wunused-top-binds]
    Defined but not used: ‘emitCaseWith_Impure’
    |
647 | emitCaseWith_Impure f e bs = do
    | ^^^^^^^^^^^^^^^^^^^
[49 of 69] Compiling Language.Hakaru.Evaluation.ExpectMonad ( haskell/Language/Hakaru/Evaluation/ExpectMonad.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Evaluation/ExpectMonad.o )
[50 of 69] Compiling Language.Hakaru.Expect ( haskell/Language/Hakaru/Expect.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Expect.o )
[51 of 69] Compiling Language.Hakaru.Pretty.Maple ( haskell/Language/Hakaru/Pretty/Maple.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Pretty/Maple.o )

haskell/Language/Hakaru/Pretty/Maple.hs:51:1: warning: [-Wunused-imports]
    The import of ‘Language.Hakaru.Expect’ is redundant
      except perhaps to import instances from ‘Language.Hakaru.Expect’
    To import instances alone, use: import Language.Hakaru.Expect()
   |
51 | import Language.Hakaru.Expect
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Pretty/Maple.hs:122:9: warning: [-Wincomplete-patterns]
    Pattern match(es) are non-exhaustive
    In a case alternative: Patterns not matched: (Bucket _ _ _)
    |
122 |         case t of
    |         ^^^^^^^^^...

haskell/Language/Hakaru/Pretty/Maple.hs:192:21: warning: [-Wunused-matches]
    Defined but not used: ‘e1’
    |
192 | mapleSCon Chain = \(e1 :* e2 :* e3 :* End) ->
    |                     ^^

haskell/Language/Hakaru/Pretty/Maple.hs:192:27: warning: [-Wunused-matches]
    Defined but not used: ‘e2’
    |
192 | mapleSCon Chain = \(e1 :* e2 :* e3 :* End) ->
    |                           ^^

haskell/Language/Hakaru/Pretty/Maple.hs:192:33: warning: [-Wunused-matches]
    Defined but not used: ‘e3’
    |
192 | mapleSCon Chain = \(e1 :* e2 :* e3 :* End) ->
    |                                 ^^
[52 of 69] Compiling Language.Hakaru.Evaluation.EvalMonad ( haskell/Language/Hakaru/Evaluation/EvalMonad.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Evaluation/EvalMonad.o )

haskell/Language/Hakaru/Evaluation/EvalMonad.hs:211:1: warning: [-Wunused-top-binds]
    Defined but not used: ‘emit’
    |
211 | emit hint typ f = do
    | ^^^^

haskell/Language/Hakaru/Evaluation/EvalMonad.hs:221:1: warning: [-Wunused-top-binds]
    Defined but not used: ‘emitLet’
    |
221 | emitLet e =
    | ^^^^^^^

haskell/Language/Hakaru/Evaluation/EvalMonad.hs:233:1: warning: [-Wunused-top-binds]
    Defined but not used: ‘emitLet'’
    |
233 | emitLet' e =
    | ^^^^^^^^

haskell/Language/Hakaru/Evaluation/EvalMonad.hs:250:1: warning: [-Wunused-top-binds]
    Defined but not used: ‘emitUnpair’
    |
250 | emitUnpair (Head_   w) = return $ reifyPair w
    | ^^^^^^^^^^

haskell/Language/Hakaru/Evaluation/EvalMonad.hs:264:1: warning: [-Wunused-top-binds]
    Defined but not used: ‘emitUnpair_’
    |
264 | emitUnpair_ x y = loop
    | ^^^^^^^^^^^

haskell/Language/Hakaru/Evaluation/EvalMonad.hs:316:1: warning: [-Wunused-top-binds]
    Defined but not used: ‘emitFork_’
    |
316 | emitFork_ f ms =
    | ^^^^^^^^^

haskell/Language/Hakaru/Evaluation/EvalMonad.hs:326:1: warning: [-Wunused-top-binds]
    Defined but not used: ‘emitCaseWith’
    |
326 | emitCaseWith f e bs = do
    | ^^^^^^^^^^^^
[53 of 69] Compiling Language.Hakaru.Evaluation.ConstantPropagation ( haskell/Language/Hakaru/Evaluation/ConstantPropagation.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Evaluation/ConstantPropagation.o )
[54 of 69] Compiling Language.Hakaru.Evaluation.DisintegrationMonad ( haskell/Language/Hakaru/Evaluation/DisintegrationMonad.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Evaluation/DisintegrationMonad.o )

haskell/Language/Hakaru/Evaluation/DisintegrationMonad.hs:738:24: warning: [-Wunused-matches]
    Defined but not used: ‘ls’
    |
738 |                 SGuard ls pat scrutinee i -> Just . return . Neutral $ var x
    |                        ^^

haskell/Language/Hakaru/Evaluation/DisintegrationMonad.hs:738:27: warning: [-Wunused-matches]
    Defined but not used: ‘pat’
    |
738 |                 SGuard ls pat scrutinee i -> Just . return . Neutral $ var x
    |                           ^^^

haskell/Language/Hakaru/Evaluation/DisintegrationMonad.hs:738:31: warning: [-Wunused-matches]
    Defined but not used: ‘scrutinee’
    |
738 |                 SGuard ls pat scrutinee i -> Just . return . Neutral $ var x
    |                               ^^^^^^^^^

haskell/Language/Hakaru/Evaluation/DisintegrationMonad.hs:738:41: warning: [-Wunused-matches]
    Defined but not used: ‘i’
    |
738 |                 SGuard ls pat scrutinee i -> Just . return . Neutral $ var x
    |                                         ^
[55 of 69] Compiling Language.Hakaru.Disintegrate ( haskell/Language/Hakaru/Disintegrate.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Disintegrate.o )

haskell/Language/Hakaru/Disintegrate.hs:109:1: warning: [-Wunused-imports]
    The import of ‘Data.Functor.Compose’ is redundant
      except perhaps to import instances from ‘Data.Functor.Compose’
    To import instances alone, use: import Data.Functor.Compose()
    |
109 | import           Data.Functor.Compose (Compose(..))
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:110:1: warning: [-Wunused-imports]
    The qualified import of ‘Data.Traversable’ is redundant
      except perhaps to import instances from ‘Data.Traversable’
    To import instances alone, use: import Data.Traversable()
    |
110 | import qualified Data.Traversable     as T
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:111:1: warning: [-Wunused-imports]
    The import of ‘Data.List.NonEmpty’ is redundant
      except perhaps to import instances from ‘Data.List.NonEmpty’
    To import instances alone, use: import Data.List.NonEmpty()
    |
111 | import           Data.List.NonEmpty   (NonEmpty(..))
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:118:1: warning: [-Wunused-imports]
    The import of ‘fromMaybe’ from module ‘Data.Maybe’ is redundant
    |
118 | import           Data.Maybe           (fromMaybe, fromJust)
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:121:1: warning: [-Wunused-imports]
    The import of ‘Data.Number.Natural’ is redundant
      except perhaps to import instances from ‘Data.Number.Natural’
    To import instances alone, use: import Data.Number.Natural()
    |
121 | import Data.Number.Natural
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:445:18: warning: [-Wname-shadowing]
    This binding for ‘e’ shadows the existing binding
      bound at haskell/Language/Hakaru/Disintegrate.hs:438:9
    |
445 |          Neutral e -> Neutral . unviewABT <$>
    |                  ^

haskell/Language/Hakaru/Disintegrate.hs:512:9: warning: [-Wincomplete-patterns]
    Pattern match(es) are non-exhaustive
    In a case alternative: Patterns not matched: (Bucket _ _ _)
    |
512 |         case t of
    |         ^^^^^^^^^...

haskell/Language/Hakaru/Disintegrate.hs:543:18: warning: [-Wunused-matches]
    Defined but not used: ‘v’
    |
543 |         Literal_ v               -> bot -- unsolvable. (kinda; see note)
    |                  ^

haskell/Language/Hakaru/Disintegrate.hs:548:20: warning: [-Wunused-matches]
    Defined but not used: ‘pes’
    |
548 |         Superpose_ pes           -> bot -- giving up.
    |                    ^^^

haskell/Language/Hakaru/Disintegrate.hs:579:20: warning: [-Wname-shadowing]
    This binding for ‘t’ shadows the existing binding
      bound at haskell/Language/Hakaru/Disintegrate.hs:511:45
    |
579 |         Transform_ t :$ _            -> error $
    |                    ^

haskell/Language/Hakaru/Disintegrate.hs:649:1: warning: [-Woverlapping-patterns]
    Pattern match is redundant
    In an equation for ‘constrainValues’: constrainValues _ _ = ...
    |
649 | constrainValues _ _ = error "constrainValues: the impossible happened"
    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:732:28: warning: [-Wunused-matches]
    Defined but not used: ‘ls'’
    |
732 |                     SGuard ls' pat scrutinee i -> error "TODO: constrainVariable{SGuard}"
    |                            ^^^

haskell/Language/Hakaru/Disintegrate.hs:732:32: warning: [-Wunused-matches]
    Defined but not used: ‘pat’
    |
732 |                     SGuard ls' pat scrutinee i -> error "TODO: constrainVariable{SGuard}"
    |                                ^^^

haskell/Language/Hakaru/Disintegrate.hs:732:36: warning: [-Wunused-matches]
    Defined but not used: ‘scrutinee’
    |
732 |                     SGuard ls' pat scrutinee i -> error "TODO: constrainVariable{SGuard}"
    |                                    ^^^^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:732:46: warning: [-Wunused-matches]
    Defined but not used: ‘i’
    |
732 |                     SGuard ls' pat scrutinee i -> error "TODO: constrainVariable{SGuard}"
    |                                              ^

haskell/Language/Hakaru/Disintegrate.hs:754:19: warning: [-Wunused-matches]
    Defined but not used: ‘e1'’
    |
754 |           Neutral e1' -> bot
    |                   ^^^

haskell/Language/Hakaru/Disintegrate.hs:762:7: warning: [-Woverlapping-patterns]
    Pattern match is redundant
    In an equation for ‘go’: go _ _ = ...
    |
762 |       go _ _ = error "constrainValueArrayOp: unknown arrayOp"
    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:803:18: warning: [-Wunused-matches]
    Defined but not used: ‘tdTrue’
    |
803 | isLitTrue (Datum tdTrue sBool (Inl Done)) = True
    |                  ^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:803:25: warning: [-Wname-shadowing]
    This binding for ‘sBool’ shadows the existing binding
      imported from ‘Language.Hakaru.Types.Sing’ at haskell/Language/Hakaru/Disintegrate.hs:123:1-33
    |
803 | isLitTrue (Datum tdTrue sBool (Inl Done)) = True
    |                         ^^^^^

haskell/Language/Hakaru/Disintegrate.hs:803:25: warning: [-Wunused-matches]
    Defined but not used: ‘sBool’
    |
803 | isLitTrue (Datum tdTrue sBool (Inl Done)) = True
    |                         ^^^^^

haskell/Language/Hakaru/Disintegrate.hs:807:19: warning: [-Wunused-matches]
    Defined but not used: ‘tdFalse’
    |
807 | isLitFalse (Datum tdFalse sBool (Inr (Inl Done))) = True
    |                   ^^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:807:27: warning: [-Wname-shadowing]
    This binding for ‘sBool’ shadows the existing binding
      imported from ‘Language.Hakaru.Types.Sing’ at haskell/Language/Hakaru/Disintegrate.hs:123:1-33
    |
807 | isLitFalse (Datum tdFalse sBool (Inr (Inl Done))) = True
    |                           ^^^^^

haskell/Language/Hakaru/Disintegrate.hs:807:27: warning: [-Wunused-matches]
    Defined but not used: ‘sBool’
    |
807 | isLitFalse (Datum tdFalse sBool (Inr (Inl Done))) = True
    |                           ^^^^^

haskell/Language/Hakaru/Disintegrate.hs:957:17: warning: [-Wunused-matches]
    Defined but not used: ‘e1’
    |
957 |     go Not  = \(e1 :* End)       -> error_TODO "Not"
    |                 ^^

haskell/Language/Hakaru/Disintegrate.hs:958:17: warning: [-Wunused-matches]
    Defined but not used: ‘e1’
    |
958 |     go Impl = \(e1 :* e2 :* End) -> error_TODO "Impl"
    |                 ^^

haskell/Language/Hakaru/Disintegrate.hs:958:23: warning: [-Wunused-matches]
    Defined but not used: ‘e2’
    |
958 |     go Impl = \(e1 :* e2 :* End) -> error_TODO "Impl"
    |                       ^^

haskell/Language/Hakaru/Disintegrate.hs:959:17: warning: [-Wunused-matches]
    Defined but not used: ‘e1’
    |
959 |     go Diff = \(e1 :* e2 :* End) -> error_TODO "Diff"
    |                 ^^

haskell/Language/Hakaru/Disintegrate.hs:959:23: warning: [-Wunused-matches]
    Defined but not used: ‘e2’
    |
959 |     go Diff = \(e1 :* e2 :* End) -> error_TODO "Diff"
    |                       ^^

haskell/Language/Hakaru/Disintegrate.hs:960:17: warning: [-Wunused-matches]
    Defined but not used: ‘e1’
    |
960 |     go Nand = \(e1 :* e2 :* End) -> error_TODO "Nand"
    |                 ^^

haskell/Language/Hakaru/Disintegrate.hs:960:23: warning: [-Wunused-matches]
    Defined but not used: ‘e2’
    |
960 |     go Nand = \(e1 :* e2 :* End) -> error_TODO "Nand"
    |                       ^^

haskell/Language/Hakaru/Disintegrate.hs:961:17: warning: [-Wunused-matches]
    Defined but not used: ‘e1’
    |
961 |     go Nor  = \(e1 :* e2 :* End) -> error_TODO "Nor"
    |                 ^^

haskell/Language/Hakaru/Disintegrate.hs:961:23: warning: [-Wunused-matches]
    Defined but not used: ‘e2’
    |
961 |     go Nor  = \(e1 :* e2 :* End) -> error_TODO "Nor"
    |                       ^^

haskell/Language/Hakaru/Disintegrate.hs:1018:22: warning: [-Wunused-matches]
    Defined but not used: ‘e1’
     |
1018 |     go Sinh      = \(e1 :* End)       -> error_TODO "Sinh"
     |                      ^^

haskell/Language/Hakaru/Disintegrate.hs:1019:22: warning: [-Wunused-matches]
    Defined but not used: ‘e1’
     |
1019 |     go Cosh      = \(e1 :* End)       -> error_TODO "Cosh"
     |                      ^^

haskell/Language/Hakaru/Disintegrate.hs:1020:22: warning: [-Wunused-matches]
    Defined but not used: ‘e1’
     |
1020 |     go Tanh      = \(e1 :* End)       -> error_TODO "Tanh"
     |                      ^^

haskell/Language/Hakaru/Disintegrate.hs:1021:22: warning: [-Wunused-matches]
    Defined but not used: ‘e1’
     |
1021 |     go Asinh     = \(e1 :* End)       -> error_TODO "Asinh"
     |                      ^^

haskell/Language/Hakaru/Disintegrate.hs:1022:22: warning: [-Wunused-matches]
    Defined but not used: ‘e1’
     |
1022 |     go Acosh     = \(e1 :* End)       -> error_TODO "Acosh"
     |                      ^^

haskell/Language/Hakaru/Disintegrate.hs:1023:22: warning: [-Wunused-matches]
    Defined but not used: ‘e1’
     |
1023 |     go Atanh     = \(e1 :* End)       -> error_TODO "Atanh"
     |                      ^^

haskell/Language/Hakaru/Disintegrate.hs:1024:22: warning: [-Wunused-matches]
    Defined but not used: ‘e1’
     |
1024 |     go Choose    = \(e1 :* e2 :* End) -> error_TODO "Choose"
     |                      ^^

haskell/Language/Hakaru/Disintegrate.hs:1024:28: warning: [-Wunused-matches]
    Defined but not used: ‘e2’
     |
1024 |     go Choose    = \(e1 :* e2 :* End) -> error_TODO "Choose"
     |                            ^^

haskell/Language/Hakaru/Disintegrate.hs:1025:22: warning: [-Wunused-matches]
    Defined but not used: ‘e1’
     |
1025 |     go Floor     = \(e1 :* End)       -> error_TODO "Floor"
     |                      ^^

haskell/Language/Hakaru/Disintegrate.hs:1070:29: warning: [-Wunused-matches]
    Defined but not used: ‘e1’
     |
1070 |     go GammaFunc        = \(e1 :* End)       -> error_TODO "GammaFunc" -- scalar1
     |                             ^^

haskell/Language/Hakaru/Disintegrate.hs:1071:29: warning: [-Wunused-matches]
    Defined but not used: ‘e1’
     |
1071 |     go BetaFunc         = \(e1 :* e2 :* End) -> error_TODO "BetaFunc" -- scalar2
     |                             ^^

haskell/Language/Hakaru/Disintegrate.hs:1071:35: warning: [-Wunused-matches]
    Defined but not used: ‘e2’
     |
1071 |     go BetaFunc         = \(e1 :* e2 :* End) -> error_TODO "BetaFunc" -- scalar2
     |                                   ^^

haskell/Language/Hakaru/Disintegrate.hs:1072:16: warning: [-Wunused-matches]
    Defined but not used: ‘theOrd’
     |
1072 |     go (Equal  theOrd)  = \(e1 :* e2 :* End) -> error_TODO "Equal"
     |                ^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:1072:29: warning: [-Wunused-matches]
    Defined but not used: ‘e1’
     |
1072 |     go (Equal  theOrd)  = \(e1 :* e2 :* End) -> error_TODO "Equal"
     |                             ^^

haskell/Language/Hakaru/Disintegrate.hs:1072:35: warning: [-Wunused-matches]
    Defined but not used: ‘e2’
     |
1072 |     go (Equal  theOrd)  = \(e1 :* e2 :* End) -> error_TODO "Equal"
     |                                   ^^

haskell/Language/Hakaru/Disintegrate.hs:1073:16: warning: [-Wunused-matches]
    Defined but not used: ‘theOrd’
     |
1073 |     go (Less   theOrd)  = \(e1 :* e2 :* End) -> error_TODO "Less"
     |                ^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:1073:29: warning: [-Wunused-matches]
    Defined but not used: ‘e1’
     |
1073 |     go (Less   theOrd)  = \(e1 :* e2 :* End) -> error_TODO "Less"
     |                             ^^

haskell/Language/Hakaru/Disintegrate.hs:1073:35: warning: [-Wunused-matches]
    Defined but not used: ‘e2’
     |
1073 |     go (Less   theOrd)  = \(e1 :* e2 :* End) -> error_TODO "Less"
     |                                   ^^

haskell/Language/Hakaru/Disintegrate.hs:1074:16: warning: [-Wunused-matches]
    Defined but not used: ‘theSemi’
     |
1074 |     go (NatPow theSemi) = \(e1 :* e2 :* End) -> error_TODO "NatPow"
     |                ^^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:1074:29: warning: [-Wunused-matches]
    Defined but not used: ‘e1’
     |
1074 |     go (NatPow theSemi) = \(e1 :* e2 :* End) -> error_TODO "NatPow"
     |                             ^^

haskell/Language/Hakaru/Disintegrate.hs:1074:35: warning: [-Wunused-matches]
    Defined but not used: ‘e2’
     |
1074 |     go (NatPow theSemi) = \(e1 :* e2 :* End) -> error_TODO "NatPow"
     |                                   ^^

haskell/Language/Hakaru/Disintegrate.hs:1139:13: warning: [-Wunused-matches]
    Defined but not used: ‘theContinuous’
     |
1139 |     go (Erf theContinuous) = \(e1 :* End) ->
     |             ^^^^^^^^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:1139:32: warning: [-Wunused-matches]
    Defined but not used: ‘e1’
     |
1139 |     go (Erf theContinuous) = \(e1 :* End) ->
     |                                ^^

haskell/Language/Hakaru/Disintegrate.hs:1223:16: warning: [-Wunused-matches]
    Defined but not used: ‘e1’
     |
1223 |     go (WChain e1 e2 e3)     = error "TODO: constrainOutcome{Chain}"
     |                ^^

haskell/Language/Hakaru/Disintegrate.hs:1223:19: warning: [-Wunused-matches]
    Defined but not used: ‘e2’
     |
1223 |     go (WChain e1 e2 e3)     = error "TODO: constrainOutcome{Chain}"
     |                   ^^

haskell/Language/Hakaru/Disintegrate.hs:1223:22: warning: [-Wunused-matches]
    Defined but not used: ‘e3’
     |
1223 |     go (WChain e1 e2 e3)     = error "TODO: constrainOutcome{Chain}"
     |                      ^^

haskell/Language/Hakaru/Disintegrate.hs:1224:17: warning: [-Wunused-matches]
    Defined but not used: ‘typ’
     |
1224 |     go (WReject typ)         = emit_ $ \m -> P.reject (typeOf m)
     |                 ^^^
[56 of 69] Compiling Language.Hakaru.Inference ( haskell/Language/Hakaru/Inference.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Inference.o )

haskell/Language/Hakaru/Inference.hs:49:1: warning: [-Wunused-imports]
    The import of ‘disintegrateInCtx’
    from module ‘Language.Hakaru.Disintegrate’ is redundant
   |
49 | import Language.Hakaru.Disintegrate (determine
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

haskell/Language/Hakaru/Inference.hs:52:1: warning: [-Wunused-imports]
    The import of ‘Language.Hakaru.Syntax.IClasses’ is redundant
      except perhaps to import instances from ‘Language.Hakaru.Syntax.IClasses’
    To import instances alone, use: import Language.Hakaru.Syntax.IClasses()
   |
52 | import Language.Hakaru.Syntax.IClasses (TypeEq(..), JmEq1(..))
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Inference.hs:55:1: warning: [-Wunused-imports]
    The import of ‘Control.Monad.Except’ is redundant
      except perhaps to import instances from ‘Control.Monad.Except’
    To import instances alone, use: import Control.Monad.Except()
   |
55 | import Control.Monad.Except (MonadError(..))
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Inference.hs:57:1: warning: [-Wunused-imports]
    The qualified import of ‘Control.Applicative’ is redundant
      except perhaps to import instances from ‘Control.Applicative’
    To import instances alone, use: import Control.Applicative()
   |
57 | import qualified Control.Applicative as P
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[57 of 69] Compiling Language.Hakaru.Maple ( haskell/Language/Hakaru/Maple.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Maple.o )
[58 of 69] Compiling Language.Hakaru.Syntax.AST.Transforms ( haskell/Language/Hakaru/Syntax/AST/Transforms.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Syntax/AST/Transforms.o )

haskell/Language/Hakaru/Syntax/AST/Transforms.hs:35:1: warning: [-Wunused-imports]
    The import of ‘Data.Ratio’ is redundant
      except perhaps to import instances from ‘Data.Ratio’
    To import instances alone, use: import Data.Ratio()
   |
35 | import Data.Ratio (numerator, denominator)
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Syntax/AST/Transforms.hs:36:1: warning: [-Wunused-imports]
    The import of ‘Sing, sing’
    from module ‘Language.Hakaru.Types.Sing’ is redundant
   |
36 | import Language.Hakaru.Types.Sing (sing, Sing(..), sUnFun)
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Syntax/AST/Transforms.hs:37:1: warning: [-Wunused-imports]
    The import of ‘Language.Hakaru.Types.HClasses’ is redundant
      except perhaps to import instances from ‘Language.Hakaru.Types.HClasses’
    To import instances alone, use: import Language.Hakaru.Types.HClasses()
   |
37 | import Language.Hakaru.Types.HClasses (HFractional(..))
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Syntax/AST/Transforms.hs:38:1: warning: [-Wunused-imports]
    The import of ‘Language.Hakaru.Types.Coercion’ is redundant
      except perhaps to import instances from ‘Language.Hakaru.Types.Coercion’
    To import instances alone, use: import Language.Hakaru.Types.Coercion()
   |
38 | import Language.Hakaru.Types.Coercion (findCoercion, Coerce(..))
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Syntax/AST/Transforms.hs:39:1: warning: [-Wunused-imports]
    The qualified import of ‘Data.Sequence’ is redundant
      except perhaps to import instances from ‘Data.Sequence’
    To import instances alone, use: import Data.Sequence()
   |
39 | import qualified Data.Sequence as Seq
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Syntax/AST/Transforms.hs:44:1: warning: [-Wunused-imports]
    The import of ‘Alternative’
    from module ‘Control.Applicative’ is redundant
   |
44 | import Control.Applicative (Applicative(..), Alternative(..), (<$>), (<$))
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[59 of 69] Compiling Language.Hakaru.Simplify ( haskell/Language/Hakaru/Simplify.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Simplify.o )

haskell/Language/Hakaru/Simplify.hs:53:19: warning: [-Wunused-foralls]
    Unused quantified type variable ‘a’
    In the type ‘forall abt a.
                 (ABT Term (abt Term)) =>
                 TypedAST (abt Term) -> IO (TypedAST (abt Term))’
   |
53 |     :: forall abt a
   |                   ^
[60 of 69] Compiling Tests.Parser     ( haskell/Tests/Parser.hs, dist/build/system-testsuite/system-testsuite-tmp/Tests/Parser.o )

haskell/Tests/Parser.hs:16:1: warning: [-Wunused-imports]
    The import of ‘Data.Function’ is redundant
      except perhaps to import instances from ‘Data.Function’
    To import instances alone, use: import Data.Function()
   |
16 | import Data.Function (on)
   | ^^^^^^^^^^^^^^^^^^^^^^^^^
[61 of 69] Compiling Tests.TestTools  ( haskell/Tests/TestTools.hs, dist/build/system-testsuite/system-testsuite-tmp/Tests/TestTools.o )

haskell/Tests/TestTools.hs:17:1: warning: [-Wunused-imports]
    The import of ‘Language.Hakaru.Parser.Parser’ is redundant
      except perhaps to import instances from ‘Language.Hakaru.Parser.Parser’
    To import instances alone, use: import Language.Hakaru.Parser.Parser()
   |
17 | import Language.Hakaru.Parser.Parser (parseHakaru)
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/TestTools.hs:18:1: warning: [-Wunused-imports]
    The import of ‘Language.Hakaru.Parser.SymbolResolve’ is redundant
      except perhaps to import instances from ‘Language.Hakaru.Parser.SymbolResolve’
    To import instances alone, use: import Language.Hakaru.Parser.SymbolResolve()
   |
18 | import Language.Hakaru.Parser.SymbolResolve (resolveAST)
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/TestTools.hs:173:18: warning: [-Wname-shadowing]
    This binding for ‘t’ shadows the existing binding
      bound at haskell/Tests/TestTools.hs:170:22
    |
173 |           mapM (\t -> fileSource t <$> IO.readFile t) [t0', t1'] >>= \[t0,t1] ->
    |                  ^
[62 of 69] Compiling Tests.Simplify   ( haskell/Tests/Simplify.hs, dist/build/system-testsuite/system-testsuite-tmp/Tests/Simplify.o )
[63 of 69] Compiling Tests.RoundTrip  ( haskell/Tests/RoundTrip.hs, dist/build/system-testsuite/system-testsuite-tmp/Tests/RoundTrip.o )

haskell/Tests/RoundTrip.hs:18:1: warning: [-Wunused-imports]
    The import of ‘++, Bool, FilePath, Show, String, asTypeOf, concat’
    from module ‘Prelude’ is redundant
   |
18 | import           Prelude ((.), ($), asTypeOf, String, FilePath, Show(..), (++), Bool(..), concat)
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/RoundTrip.hs:19:1: warning: [-Wunused-imports]
    The qualified import of ‘Prelude’ is redundant
      except perhaps to import instances from ‘Prelude’
    To import instances alone, use: import Prelude()
   |
19 | import qualified Prelude
   | ^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/RoundTrip.hs:21:1: warning: [-Wunused-imports]
    The import of ‘Data.Ratio’ is redundant
      except perhaps to import instances from ‘Data.Ratio’
    To import instances alone, use: import Data.Ratio()
   |
21 | import           Data.Ratio
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/RoundTrip.hs:22:1: warning: [-Wunused-imports]
    The qualified import of ‘Data.Text.Utf8’ is redundant
      except perhaps to import instances from ‘Data.Text.Utf8’
    To import instances alone, use: import Data.Text.Utf8()
   |
22 | import qualified Data.Text.Utf8 as IO
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/RoundTrip.hs:26:1: warning: [-Wunused-imports]
    The import of ‘Language.Hakaru.Pretty.Concrete’ is redundant
      except perhaps to import instances from ‘Language.Hakaru.Pretty.Concrete’
    To import instances alone, use: import Language.Hakaru.Pretty.Concrete()
   |
26 | import Language.Hakaru.Pretty.Concrete (pretty)
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/RoundTrip.hs:27:1: warning: [-Wunused-imports]
    The import of ‘PrimOp’
    from module ‘Language.Hakaru.Syntax.AST’ is redundant
   |
27 | import Language.Hakaru.Syntax.AST (Term, PrimOp(..))
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/RoundTrip.hs:28:1: warning: [-Wunused-imports]
    The import of ‘Language.Hakaru.Syntax.AST.Transforms’ is redundant
      except perhaps to import instances from ‘Language.Hakaru.Syntax.AST.Transforms’
    To import instances alone, use: import Language.Hakaru.Syntax.AST.Transforms()
   |
28 | import Language.Hakaru.Syntax.AST.Transforms
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/RoundTrip.hs:29:1: warning: [-Wdodgy-imports]
    The import item ‘TrivialABT(..)’ suggests that
    ‘TrivialABT’ has (in-scope) constructors or class methods,
    but it has none
   |
29 | import Language.Hakaru.Syntax.ABT (ABT, TrivialABT(..))
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/RoundTrip.hs:29:1: warning: [-Wunused-imports]
    The import of ‘TrivialABT’
    from module ‘Language.Hakaru.Syntax.ABT’ is redundant
   |
29 | import Language.Hakaru.Syntax.ABT (ABT, TrivialABT(..))
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/RoundTrip.hs:30:1: warning: [-Wunused-imports]
    The import of ‘Language.Hakaru.Expect’ is redundant
      except perhaps to import instances from ‘Language.Hakaru.Expect’
    To import instances alone, use: import Language.Hakaru.Expect()
   |
30 | import Language.Hakaru.Expect     (total)
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/RoundTrip.hs:31:1: warning: [-Wunused-imports]
    The import of ‘Language.Hakaru.Inference’ is redundant
      except perhaps to import instances from ‘Language.Hakaru.Inference’
    To import instances alone, use: import Language.Hakaru.Inference()
   |
31 | import Language.Hakaru.Inference  (priorAsProposal, mcmc, mh)
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/RoundTrip.hs:33:1: warning: [-Wunused-imports]
    The import of ‘System.IO’ is redundant
      except perhaps to import instances from ‘System.IO’
    To import instances alone, use: import System.IO()
   |
33 | import System.IO
   | ^^^^^^^^^^^^^^^^

haskell/Tests/RoundTrip.hs:34:1: warning: [-Wunused-imports]
    The import of ‘System.Directory’ is redundant
      except perhaps to import instances from ‘System.Directory’
    To import instances alone, use: import System.Directory()
   |
34 | import System.Directory
   | ^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/RoundTrip.hs:35:1: warning: [-Wunused-imports]
    The import of ‘Control.Monad’ is redundant
      except perhaps to import instances from ‘Control.Monad’
    To import instances alone, use: import Control.Monad()
   |
35 | import Control.Monad (mapM_, Monad(return))
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/RoundTrip.hs:36:1: warning: [-Wunused-imports]
    The import of ‘Data.Foldable’ is redundant
      except perhaps to import instances from ‘Data.Foldable’
    To import instances alone, use: import Data.Foldable()
   |
36 | import Data.Foldable (null)
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/RoundTrip.hs:37:1: warning: [-Wunused-imports]
    The import of ‘Data.List’ is redundant
      except perhaps to import instances from ‘Data.List’
    To import instances alone, use: import Data.List()
   |
37 | import Data.List (intercalate)
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/RoundTrip.hs:39:1: warning: [-Wunused-imports]
    The qualified import of ‘Data.Text’ is redundant
      except perhaps to import instances from ‘Data.Text’
    To import instances alone, use: import Data.Text()
   |
39 | import qualified Data.Text as Text
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/RoundTrip.hs:42:1: warning: [-Wunused-imports]
    The import of ‘beta_1_1, norm, normalC, normal_0_1, unif2,
                   uniformC, uniform_0_1’
    from module ‘Tests.Models’ is redundant
   |
42 | import Tests.Models
   | ^^^^^^^^^^^^^^^^^^^...

haskell/Tests/RoundTrip.hs:572:109: warning: [-Wunused-matches]
    Defined but not used: ‘x37’
    |
572 |                                                                                (lam $ \x37 ->
    |                                                                                ^^^

haskell/Tests/RoundTrip.hs:575:104: warning: [-Wunused-matches]
    Defined but not used: ‘x37’
    |
575 |                                                                                (lam $ \x37 ->
    |                                                                                ^^^

haskell/Tests/RoundTrip.hs:579:99: warning: [-Wunused-matches]
    Defined but not used: ‘x39’
    |
579 |                                                                                (lam $ \x39 ->
    |                                                                                ^^^

haskell/Tests/RoundTrip.hs:582:116: warning: [-Wunused-matches]
    Defined but not used: ‘x41’
    |
582 |                                                                                x37 `unpair` \x40 x41 ->
    |                                                                                ^^^

haskell/Tests/RoundTrip.hs:585:116: warning: [-Wunused-matches]
    Defined but not used: ‘x41’
    |
585 |                                                                                x39 `unpair` \x40 x41 ->
    |                                                                                ^^^

haskell/Tests/RoundTrip.hs:590:105: warning: [-Wunused-matches]
    Defined but not used: ‘x41’
    |
590 |                                                                                * (x37 `unpair` \x41 x42 ->
    |                                                                                ^^^

haskell/Tests/RoundTrip.hs:594:105: warning: [-Wunused-matches]
    Defined but not used: ‘x41’
    |
594 |                                                                                * (x39 `unpair` \x41 x42 ->
    |                                                                                ^^^

haskell/Tests/RoundTrip.hs:598:98: warning: [-Wunused-matches]
    Defined but not used: ‘x38’
    |
598 |                                                                                x36 `unpair` \x37 x38 ->
    |                                                                                ^^^

haskell/Tests/RoundTrip.hs:603:99: warning: [-Wunused-matches]
    Defined but not used: ‘x38’
    |
603 |                                                                                * (x36 `unpair` \x38 x39 ->
    |                                                                                ^^^

haskell/Tests/RoundTrip.hs:607:87: warning: [-Wunused-matches]
    Defined but not used: ‘x35’
    |
607 |                                                                               (lam $ \x35 -> zero)))
    |                                                                                ^^^

haskell/Tests/RoundTrip.hs:609:82: warning: [-Wunused-matches]
    Defined but not used: ‘x35’
    |
609 |                                                                          (lam $ \x35 -> zero))) $ \x35 ->
    |                                                                                ^^^

haskell/Tests/RoundTrip.hs:612:77: warning: [-Wunused-matches]
    Defined but not used: ‘x37’
    |
612 |                                                                     (lam $ \x37 -> zero)) $ \x37 ->
    |                                                                             ^^^

haskell/Tests/RoundTrip.hs:614:94: warning: [-Wunused-matches]
    Defined but not used: ‘x39’
    |
614 |                                                                            x35 `unpair` \x38 x39 ->
    |                                                                                ^^^

haskell/Tests/RoundTrip.hs:617:94: warning: [-Wunused-matches]
    Defined but not used: ‘x39’
    |
617 |                                                                            x37 `unpair` \x38 x39 ->
    |                                                                                ^^^

haskell/Tests/RoundTrip.hs:622:83: warning: [-Wunused-matches]
    Defined but not used: ‘x39’
    |
622 |                                                                  * (x35 `unpair` \x39 x40 -> x40)
    |                                                                                ^^^

haskell/Tests/RoundTrip.hs:625:83: warning: [-Wunused-matches]
    Defined but not used: ‘x39’
    |
625 |                                                                  * (x37 `unpair` \x39 x40 -> x40)
    |                                                                                ^^^

haskell/Tests/RoundTrip.hs:627:93: warning: [-Wunused-matches]
    Defined but not used: ‘x36’
    |
627 |                                                    pair (withWeight x33 $ x34 `unpair` \x35 x36 -> x35)
    |                                                                                ^^^

haskell/Tests/RoundTrip.hs:631:77: warning: [-Wunused-matches]
    Defined but not used: ‘x36’
    |
631 |                                                            * (x34 `unpair` \x36 x37 -> x37)
    |                                                                             ^^^

haskell/Tests/RoundTrip.hs:633:87: warning: [-Wunused-matches]
    Defined but not used: ‘x35’
    |
633 |                                              pair (withWeight x32 $ x33 `unpair` \x34 x35 -> x34)
    |                                                                                ^^^

haskell/Tests/RoundTrip.hs:637:71: warning: [-Wunused-matches]
    Defined but not used: ‘x35’
    |
637 |                                                      * (x33 `unpair` \x35 x36 -> x36)
    |                                                                       ^^^

haskell/Tests/RoundTrip.hs:639:81: warning: [-Wunused-matches]
    Defined but not used: ‘x14’
    |
639 |                                        pair (withWeight x11 $ x12 `unpair` \x13 x14 -> x13)
    |                                                                                ^^^

haskell/Tests/RoundTrip.hs:643:65: warning: [-Wunused-matches]
    Defined but not used: ‘x14’
    |
643 |                                                * (x12 `unpair` \x14 x15 -> x15) `app` x13)) $ \x11 ->
    |                                                                 ^^^

haskell/Tests/RoundTrip.hs:645:67: warning: [-Wunused-matches]
    Defined but not used: ‘x13’
    |
645 |                                  let_ (pair (reject sing) (lam $ \x13 -> zero)) $ \x13 ->
    |                                                                   ^^^

haskell/Tests/RoundTrip.hs:646:81: warning: [-Wunused-matches]
    Defined but not used: ‘x15’
    |
646 |                                  pair (unsafeSuperpose [(x10, x11 `unpair` \x14 x15 -> x14),
    |                                                                                ^^^

haskell/Tests/RoundTrip.hs:647:75: warning: [-Wunused-matches]
    Defined but not used: ‘x15’
    |
647 |                                                   (x12, x13 `unpair` \x14 x15 -> x14)])
    |                                                                           ^^^

haskell/Tests/RoundTrip.hs:649:68: warning: [-Wunused-matches]
    Defined but not used: ‘x15’
    |
649 |                                        zero + x10 * (x11 `unpair` \x15 x16 -> x16) `app` x14
    |                                                                    ^^^

haskell/Tests/RoundTrip.hs:650:63: warning: [-Wunused-matches]
    Defined but not used: ‘x15’
    |
650 |                                        + x12 * (x13 `unpair` \x15 x16 -> x16) `app` x14)) $ \x10 ->
    |                                                               ^^^

haskell/Tests/RoundTrip.hs:651:68: warning: [-Wunused-matches]
    Defined but not used: ‘x12’
    |
651 |                            pair (withWeight x9 $ x10 `unpair` \x11 x12 -> x11)
    |                                                                    ^^^

haskell/Tests/RoundTrip.hs:653:61: warning: [-Wunused-matches]
    Defined but not used: ‘x12’
    |
653 |                                  zero + x9 * (x10 `unpair` \x12 x13 -> x13) `app` x11)) $ \x9 ->
    |                                                             ^^^

haskell/Tests/RoundTrip.hs:655:55: warning: [-Wunused-matches]
    Defined but not used: ‘x11’
    |
655 |                      let_ (pair (reject sing) (lam $ \x11 -> zero)) $ \x11 ->
    |                                                       ^^^

haskell/Tests/RoundTrip.hs:656:67: warning: [-Wunused-matches]
    Defined but not used: ‘x13’
    |
656 |                      pair (unsafeSuperpose [(x8, x9 `unpair` \x12 x13 -> x12),
    |                                                                   ^^^

haskell/Tests/RoundTrip.hs:657:63: warning: [-Wunused-matches]
    Defined but not used: ‘x13’
    |
657 |                                       (x10, x11 `unpair` \x12 x13 -> x12)])
    |                                                               ^^^

haskell/Tests/RoundTrip.hs:659:54: warning: [-Wunused-matches]
    Defined but not used: ‘x13’
    |
659 |                            zero + x8 * (x9 `unpair` \x13 x14 -> x14) `app` x12
    |                                                      ^^^

haskell/Tests/RoundTrip.hs:660:51: warning: [-Wunused-matches]
    Defined but not used: ‘x13’
    |
660 |                            + x10 * (x11 `unpair` \x13 x14 -> x14) `app` x12)) $ \x8 ->
    |                                                   ^^^

haskell/Tests/RoundTrip.hs:661:54: warning: [-Wunused-matches]
    Defined but not used: ‘x10’
    |
661 |                pair (withWeight x7 $ x8 `unpair` \x9 x10 -> x9)
    |                                                      ^^^

haskell/Tests/RoundTrip.hs:663:48: warning: [-Wunused-matches]
    Defined but not used: ‘x10’
    |
663 |                      zero + x7 * (x8 `unpair` \x10 x11 -> x11) `app` x9)) $ \x7 ->
    |                                                ^^^

haskell/Tests/RoundTrip.hs:664:48: warning: [-Wunused-matches]
    Defined but not used: ‘x9’
    |
664 |          pair (withWeight x6 $ x7 `unpair` \x8 x9 -> x8)
    |                                                ^^

haskell/Tests/RoundTrip.hs:665:55: warning: [-Wunused-matches]
    Defined but not used: ‘x9’
    |
665 |               (lam $ \x8 -> zero + x6 * (x7 `unpair` \x9 x10 -> x10) `app` x8))
    |                                                       ^^

haskell/Tests/RoundTrip.hs:667:28: warning: [-Wunused-matches]
    Defined but not used: ‘x2’
    |
667 |         `app` x1 `unpair` \x2 x3 ->
    |                            ^^

haskell/Tests/RoundTrip.hs:668:26: warning: [-Wunused-matches]
    Defined but not used: ‘x4’
    |
668 |         x3 `app` (lam $ \x4 -> one)) $ \x1 ->
    |                          ^^
[64 of 69] Compiling Tests.Relationships ( haskell/Tests/Relationships.hs, dist/build/system-testsuite/system-testsuite-tmp/Tests/Relationships.o )

haskell/Tests/Relationships.hs:11:1: warning: [-Wunused-imports]
    The import of ‘., asTypeOf, id’ from module ‘Prelude’ is redundant
   |
11 | import Prelude ((.), id, ($), asTypeOf)
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/Relationships.hs:32:56: warning: [-Wunused-matches]
    Defined but not used: ‘x’
   |
32 |     "t3"   ~: testSStriv [t3, t3'] (lam $ \a -> lam $ \x -> gamma a (prob_ 2)),
   |                                                        ^
[65 of 69] Compiling Tests.Pretty     ( haskell/Tests/Pretty.hs, dist/build/system-testsuite/system-testsuite-tmp/Tests/Pretty.o )

haskell/Tests/Pretty.hs:14:1: warning: [-Wunused-imports]
    The import of ‘Language.Hakaru.Types.Sing’ is redundant
      except perhaps to import instances from ‘Language.Hakaru.Types.Sing’
    To import instances alone, use: import Language.Hakaru.Types.Sing()
   |
14 | import           Language.Hakaru.Types.Sing
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/Pretty.hs:16:1: warning: [-Wunused-imports]
    The qualified import of ‘Language.Hakaru.Parser.AST’ is redundant
      except perhaps to import instances from ‘Language.Hakaru.Parser.AST’
    To import instances alone, use: import Language.Hakaru.Parser.AST()
   |
16 | import qualified Language.Hakaru.Parser.AST as U
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/Pretty.hs:19:1: warning: [-Wunused-imports]
    The import of ‘Language.Hakaru.Types.Sing’ is redundant
      except perhaps to import instances from ‘Language.Hakaru.Types.Sing’
    To import instances alone, use: import Language.Hakaru.Types.Sing()
   |
19 | import           Language.Hakaru.Types.Sing
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/Pretty.hs:24:1: warning: [-Wunused-imports]
    The import of ‘Text.PrettyPrint’ is redundant
      except perhaps to import instances from ‘Text.PrettyPrint’
    To import instances alone, use: import Text.PrettyPrint()
   |
24 | import           Text.PrettyPrint
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/Pretty.hs:26:1: warning: [-Wunused-imports]
    The import of ‘Text.Parsec.Error’ is redundant
      except perhaps to import instances from ‘Text.Parsec.Error’
    To import instances alone, use: import Text.Parsec.Error()
   |
26 | import           Text.Parsec.Error
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/Pretty.hs:27:1: warning: [-Wunused-imports]
    The import of ‘Control.Monad.Trans.State.Strict’ is redundant
      except perhaps to import instances from ‘Control.Monad.Trans.State.Strict’
    To import instances alone, use: import Control.Monad.Trans.State.Strict()
   |
27 | import           Control.Monad.Trans.State.Strict (evalState)
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/Pretty.hs:29:1: warning: [-Wunused-imports]
    The import of ‘Bool, FilePath, Maybe, String, asTypeOf,
                   Prelude.concat’
    from module ‘Prelude’ is redundant
   |
29 | import           Prelude ((.), ($), asTypeOf, String, FilePath, Show(..), (++), Bool(..), concat
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

haskell/Tests/Pretty.hs:44:1: warning: [-Wmissing-signatures]
    Top-level binding with no type signature: letTest :: Text
   |
44 | letTest = unlines ["x = 2"
   | ^^^^^^^

haskell/Tests/Pretty.hs:49:1: warning: [-Wmissing-signatures]
    Top-level binding with no type signature: letTest2 :: Text
   |
49 | letTest2 = unlines ["x = y = 2"
   | ^^^^^^^^

haskell/Tests/Pretty.hs:54:1: warning: [-Wmissing-signatures]
    Top-level binding with no type signature: defTest :: Text
   |
54 | defTest = unlines ["foo = fn x nat:"
   | ^^^^^^^

haskell/Tests/Pretty.hs:59:1: warning: [-Wmissing-signatures]
    Top-level binding with no type signature: defTest2 :: Text
   |
59 | defTest2 = unlines ["foo = fn x nat: fn y nat:"
   | ^^^^^^^^

haskell/Tests/Pretty.hs:69:33: warning: [-Wunticked-promoted-constructors]
    Unticked promoted constructor: ‘HProb’.
    Use ‘'HProb’ instead of ‘HProb’.
   |
69 | caseFn2 :: (ABT T.Term abt, b ~ HProb) => abt '[] (b :-> (b :-> (b :-> b)))
   |                                 ^^^^^

haskell/Tests/Pretty.hs:69:52: warning: [-Wunticked-promoted-constructors]
    Unticked promoted constructor: ‘:->’.
    Use ‘':->’ instead of ‘:->’.
   |
69 | caseFn2 :: (ABT T.Term abt, b ~ HProb) => abt '[] (b :-> (b :-> (b :-> b)))
   |                                                    ^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/Pretty.hs:69:59: warning: [-Wunticked-promoted-constructors]
    Unticked promoted constructor: ‘:->’.
    Use ‘':->’ instead of ‘:->’.
   |
69 | caseFn2 :: (ABT T.Term abt, b ~ HProb) => abt '[] (b :-> (b :-> (b :-> b)))
   |                                                           ^^^^^^^^^^^^^^^

haskell/Tests/Pretty.hs:69:66: warning: [-Wunticked-promoted-constructors]
    Unticked promoted constructor: ‘:->’.
    Use ‘':->’ instead of ‘:->’.
   |
69 | caseFn2 :: (ABT T.Term abt, b ~ HProb) => abt '[] (b :-> (b :-> (b :-> b)))
   |                                                                  ^^^^^^^

haskell/Tests/Pretty.hs:76:29: warning: [-Wunticked-promoted-constructors]
    Unticked promoted constructor: ‘HProb’.
    Use ‘'HProb’ instead of ‘HProb’.
   |
76 | hof :: (ABT T.Term abt, a ~ HProb) => abt '[] (a :-> a :-> a :-> (a :-> (a :-> HPair a ((a :-> a) :-> a))) :-> a)
   |                             ^^^^^

haskell/Tests/Pretty.hs:76:48: warning: [-Wunticked-promoted-constructors]
    Unticked promoted constructor: ‘:->’.
    Use ‘':->’ instead of ‘:->’.
   |
76 | hof :: (ABT T.Term abt, a ~ HProb) => abt '[] (a :-> a :-> a :-> (a :-> (a :-> HPair a ((a :-> a) :-> a))) :-> a)
   |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/Pretty.hs:76:48: warning: [-Wunticked-promoted-constructors]
    Unticked promoted constructor: ‘:->’.
    Use ‘':->’ instead of ‘:->’.
   |
76 | hof :: (ABT T.Term abt, a ~ HProb) => abt '[] (a :-> a :-> a :-> (a :-> (a :-> HPair a ((a :-> a) :-> a))) :-> a)
   |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/Pretty.hs:76:48: warning: [-Wunticked-promoted-constructors]
    Unticked promoted constructor: ‘:->’.
    Use ‘':->’ instead of ‘:->’.
   |
76 | hof :: (ABT T.Term abt, a ~ HProb) => abt '[] (a :-> a :-> a :-> (a :-> (a :-> HPair a ((a :-> a) :-> a))) :-> a)
   |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/Pretty.hs:76:48: warning: [-Wunticked-promoted-constructors]
    Unticked promoted constructor: ‘:->’.
    Use ‘':->’ instead of ‘:->’.
   |
76 | hof :: (ABT T.Term abt, a ~ HProb) => abt '[] (a :-> a :-> a :-> (a :-> (a :-> HPair a ((a :-> a) :-> a))) :-> a)
   |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/Pretty.hs:76:67: warning: [-Wunticked-promoted-constructors]
    Unticked promoted constructor: ‘:->’.
    Use ‘':->’ instead of ‘:->’.
   |
76 | hof :: (ABT T.Term abt, a ~ HProb) => abt '[] (a :-> a :-> a :-> (a :-> (a :-> HPair a ((a :-> a) :-> a))) :-> a)
   |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/Pretty.hs:76:74: warning: [-Wunticked-promoted-constructors]
    Unticked promoted constructor: ‘:->’.
    Use ‘':->’ instead of ‘:->’.
   |
76 | hof :: (ABT T.Term abt, a ~ HProb) => abt '[] (a :-> a :-> a :-> (a :-> (a :-> HPair a ((a :-> a) :-> a))) :-> a)
   |                                                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/Pretty.hs:76:89: warning: [-Wunticked-promoted-constructors]
    Unticked promoted constructor: ‘:->’.
    Use ‘':->’ instead of ‘:->’.
   |
76 | hof :: (ABT T.Term abt, a ~ HProb) => abt '[] (a :-> a :-> a :-> (a :-> (a :-> HPair a ((a :-> a) :-> a))) :-> a)
   |                                                                                ^^^^^^^^^^^^^^^

haskell/Tests/Pretty.hs:76:90: warning: [-Wunticked-promoted-constructors]
    Unticked promoted constructor: ‘:->’.
    Use ‘':->’ instead of ‘:->’.
   |
76 | hof :: (ABT T.Term abt, a ~ HProb) => abt '[] (a :-> a :-> a :-> (a :-> (a :-> HPair a ((a :-> a) :-> a))) :-> a)
   |                                                                                ^^^^^^^

haskell/Tests/Pretty.hs:78:36: warning: [-Wunused-matches]
    Defined but not used: ‘x3’
   |
78 |   lam $ \x0 -> lam $ \x1 -> lam $ \x3 -> lam $ \x4 -> (
   |                                    ^^

haskell/Tests/Pretty.hs:80:28: warning: [-Wunused-matches]
    Defined but not used: ‘x2’
   |
80 |         `app` x1 `unpair` \x2 x3 ->
   |                            ^^

haskell/Tests/Pretty.hs:80:31: warning: [-Wname-shadowing]
    This binding for ‘x3’ shadows the existing binding
      bound at haskell/Tests/Pretty.hs:78:36
   |
80 |         `app` x1 `unpair` \x2 x3 ->
   |                               ^^
[66 of 69] Compiling Tests.Disintegrate ( haskell/Tests/Disintegrate.hs, dist/build/system-testsuite/system-testsuite-tmp/Tests/Disintegrate.o )

haskell/Tests/Disintegrate.hs:116:17: warning: [-Wunticked-promoted-constructors]
    Unticked promoted constructor: ‘HReal’.
    Use ‘'HReal’ instead of ‘HReal’.
    |
116 | norm1b :: Model HReal HUnit
    |                 ^^^^^

haskell/Tests/Disintegrate.hs:337:12: warning: [-Wunused-matches]
    Defined but not used: ‘t’
    |
337 |     lam $ \t ->
    |            ^
[67 of 69] Compiling Tests.ASTTransforms ( haskell/Tests/ASTTransforms.hs, dist/build/system-testsuite/system-testsuite-tmp/Tests/ASTTransforms.o )

haskell/Tests/ASTTransforms.hs:12:1: warning: [-Wunused-imports]
    The qualified import of ‘Data.Vector’ is redundant
      except perhaps to import instances from ‘Data.Vector’
    To import instances alone, use: import Data.Vector()
   |
12 | import qualified Data.Vector                      as V
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/ASTTransforms.hs:13:1: warning: [-Wunused-imports]
    The import of ‘GHC.Word’ is redundant
      except perhaps to import instances from ‘GHC.Word’
    To import instances alone, use: import GHC.Word()
   |
13 | import           GHC.Word                         (Word32)
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/ASTTransforms.hs:24:1: warning: [-Wunused-imports]
    The import of ‘Language.Hakaru.Syntax.Datum’ is redundant
      except perhaps to import instances from ‘Language.Hakaru.Syntax.Datum’
    To import instances alone, use: import Language.Hakaru.Syntax.Datum()
   |
24 | import           Language.Hakaru.Syntax.Datum
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/ASTTransforms.hs:25:1: warning: [-Wunused-imports]
    The import of ‘Language.Hakaru.Syntax.DatumCase’ is redundant
      except perhaps to import instances from ‘Language.Hakaru.Syntax.DatumCase’
    To import instances alone, use: import Language.Hakaru.Syntax.DatumCase()
   |
25 | import           Language.Hakaru.Syntax.DatumCase
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/ASTTransforms.hs:26:1: warning: [-Wunused-imports]
    The import of ‘Language.Hakaru.Syntax.IClasses’ is redundant
      except perhaps to import instances from ‘Language.Hakaru.Syntax.IClasses’
    To import instances alone, use: import Language.Hakaru.Syntax.IClasses()
   |
26 | import           Language.Hakaru.Syntax.IClasses
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/ASTTransforms.hs:29:1: warning: [-Wunused-imports]
    The import of ‘Language.Hakaru.Syntax.Variable’ is redundant
      except perhaps to import instances from ‘Language.Hakaru.Syntax.Variable’
    To import instances alone, use: import Language.Hakaru.Syntax.Variable()
   |
29 | import           Language.Hakaru.Syntax.Variable
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/ASTTransforms.hs:30:1: warning: [-Wunused-imports]
    The import of ‘Language.Hakaru.Types.Coercion’ is redundant
      except perhaps to import instances from ‘Language.Hakaru.Types.Coercion’
    To import instances alone, use: import Language.Hakaru.Types.Coercion()
   |
30 | import           Language.Hakaru.Types.Coercion
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/ASTTransforms.hs:32:1: warning: [-Wunused-imports]
    The import of ‘Language.Hakaru.Types.HClasses’ is redundant
      except perhaps to import instances from ‘Language.Hakaru.Types.HClasses’
    To import instances alone, use: import Language.Hakaru.Types.HClasses()
   |
32 | import           Language.Hakaru.Types.HClasses
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/ASTTransforms.hs:33:1: warning: [-Wunused-imports]
    The import of ‘Language.Hakaru.Types.Sing’ is redundant
      except perhaps to import instances from ‘Language.Hakaru.Types.Sing’
    To import instances alone, use: import Language.Hakaru.Types.Sing()
   |
33 | import           Language.Hakaru.Types.Sing
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/ASTTransforms.hs:40:1: warning: [-Wunused-imports]
    The import of ‘Tests.TestTools’ is redundant
      except perhaps to import instances from ‘Tests.TestTools’
    To import instances alone, use: import Tests.TestTools()
   |
40 | import           Tests.TestTools
   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Tests/ASTTransforms.hs:189:50: warning: [-Wunused-matches]
    Defined but not used: ‘x’
    |
189 | example2CSE = let_ (summate (nat_ 0) (nat_ 1) $ \x -> real_ 1) $ \x ->
    |                                                  ^

haskell/Tests/ASTTransforms.hs:190:50: warning: [-Wname-shadowing]
    This binding for ‘x’ shadows the existing binding
      bound at haskell/Tests/ASTTransforms.hs:189:67
    |
190 |               let_ (summate (nat_ 0) (nat_ 1) $ \x -> real_ 1) $ \y ->
    |                                                  ^

haskell/Tests/ASTTransforms.hs:190:50: warning: [-Wunused-matches]
    Defined but not used: ‘x’
    |
190 |               let_ (summate (nat_ 0) (nat_ 1) $ \x -> real_ 1) $ \y ->
    |                                                  ^

haskell/Tests/ASTTransforms.hs:194:51: warning: [-Wunused-matches]
    Defined but not used: ‘x’
    |
194 | example2CSE' = let_ (summate (nat_ 0) (nat_ 1) $ \x -> real_ 1) $ \x ->
    |                                                   ^

haskell/Tests/ASTTransforms.hs:198:45: warning: [-Wunused-matches]
    Defined but not used: ‘x’
    |
198 | example3CSE = (summate (nat_ 0) (nat_ 1) $ \x -> real_ 1)
    |                                             ^

haskell/Tests/ASTTransforms.hs:199:45: warning: [-Wunused-matches]
    Defined but not used: ‘x’
    |
199 |             + (summate (nat_ 0) (nat_ 1) $ \x -> real_ 1)
    |                                             ^
[68 of 69] Compiling Tests.TypeCheck  ( haskell/Tests/TypeCheck.hs, dist/build/system-testsuite/system-testsuite-tmp/Tests/TypeCheck.o )
[69 of 69] Compiling Main             ( haskell/Tests/TestSuite.hs, dist/build/system-testsuite/system-testsuite-tmp/Main.o )

haskell/Language/Hakaru/Syntax/Transform.hs:11:14: warning:
    -XOverlappingInstances is deprecated: instead use per-instance pragmas OVERLAPPING/OVERLAPPABLE/OVERLAPS
   |
11 |            , OverlappingInstances
   |              ^^^^^^^^^^^^^^^^^^^^
Linking dist/build/system-testsuite/system-testsuite ...
Preprocessing library for hakaru-0.7.0..
Building library for hakaru-0.7.0..

haskell/Language/Hakaru/Syntax/Transform.hs:11:14: warning:
    -XOverlappingInstances is deprecated: instead use per-instance pragmas OVERLAPPING/OVERLAPPABLE/OVERLAPS
   |
11 |            , OverlappingInstances
   |              ^^^^^^^^^^^^^^^^^^^^
Preprocessing executable 'compile' for hakaru-0.7.0..
Building executable 'compile' for hakaru-0.7.0..
Preprocessing executable 'density' for hakaru-0.7.0..
Building executable 'density' for hakaru-0.7.0..
Preprocessing executable 'disintegrate' for hakaru-0.7.0..
Building executable 'disintegrate' for hakaru-0.7.0..
Preprocessing executable 'hakaru' for hakaru-0.7.0..
Building executable 'hakaru' for hakaru-0.7.0..
Preprocessing executable 'hk-maple' for hakaru-0.7.0..
Building executable 'hk-maple' for hakaru-0.7.0..
Preprocessing executable 'hkc' for hakaru-0.7.0..
Building executable 'hkc' for hakaru-0.7.0..
Preprocessing executable 'mh' for hakaru-0.7.0..
Building executable 'mh' for hakaru-0.7.0..
Preprocessing executable 'momiji' for hakaru-0.7.0..
Building executable 'momiji' for hakaru-0.7.0..
Preprocessing executable 'normalize' for hakaru-0.7.0..
Building executable 'normalize' for hakaru-0.7.0..
Preprocessing executable 'pretty' for hakaru-0.7.0..
Building executable 'pretty' for hakaru-0.7.0..
Preprocessing executable 'prettyinternal' for hakaru-0.7.0..
Building executable 'prettyinternal' for hakaru-0.7.0..
Preprocessing executable 'summary' for hakaru-0.7.0..
Building executable 'summary' for hakaru-0.7.0..
linux[~/Work/hakaru]$ cabal install

Resolving dependencies...
In order, the following will be installed:
hakaru-0.7.0 (reinstall)
Warning: Note that reinstalls are always dangerous. Continuing anyway...
Configuring hakaru-0.7.0...
Building hakaru-0.7.0...
Installed hakaru-0.7.0
Warning: could not create symlinks in /users/usernamez/.cabal/bin for hakaru,
compile, summary, hk-maple, density, disintegrate, pretty, prettyinternal,
momiji, normalize, hkc, mh because the files exist there already and are not
managed by cabal. You can create symlinks for these executables manually if
you wish. The executable files have been installed at
/auto/users/usernamez/.cabal/bin/hakaru, /auto/users/usernamez/.cabal/bin/compile,
/auto/users/usernamez/.cabal/bin/summary, /auto/users/usernamez/.cabal/bin/hk-maple,
/auto/users/usernamez/.cabal/bin/density,
/auto/users/usernamez/.cabal/bin/disintegrate,
/auto/users/usernamez/.cabal/bin/pretty,
/auto/users/usernamez/.cabal/bin/prettyinternal,
/auto/users/usernamez/.cabal/bin/momiji, /auto/users/usernamez/.cabal/bin/normalize,
/auto/users/usernamez/.cabal/bin/hkc, /auto/users/usernamez/.cabal/bin/mh
linux[~/Work/hakaru]$

Thanks! It looks like it successfully installed
On Sat, Oct 24, 2020, 13:35 anonymous-netizen<EMAIL_ADDRESS>wrote:

The OSX installation message seems more like an error than a warning no?
On the linux machine, the full log is this:
$ cabal build
Preprocessing test suite 'system-testsuite' for hakaru-0.7.0..
Building test suite 'system-testsuite' for hakaru-0.7.0..
haskell/Language/Hakaru/Syntax/Transform.hs:11:14: warning:
-XOverlappingInstances is deprecated: instead use per-instance pragmas OVERLAPPING/OVERLAPPABLE/OVERLAPS

|
11 |            , OverlappingInstances
|              ^^^^^^^^^^^^^^^^^^^^
[43 of 69] Compiling Language.Hakaru.Syntax.TypeCheck ( haskell/Language/Hakaru/Syntax/TypeCheck.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Syntax/TypeCheck.o )
haskell/Language/Hakaru/Syntax/TypeCheck.hs:45:1: warning: [-Wunused-imports]
The import of ‘Data.Proxy’ is redundant

  except perhaps to import instances from ‘Data.Proxy’

To import instances alone, use: import Data.Proxy()

|
45 | import           Data.Proxy            (KProxy(..))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Language/Hakaru/Syntax/TypeCheck.hs:46:1: warning: [-Wunused-imports]
The import of ‘Text’ from module ‘Data.Text’ is redundant

|
46 | import           Data.Text             (pack, Text())
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Language/Hakaru/Syntax/TypeCheck.hs:53:1: warning: [-Wunused-imports]
The qualified import of ‘Data.Vector’ is redundant

  except perhaps to import instances from ‘Data.Vector’

To import instances alone, use: import Data.Vector()

|
53 | import qualified Data.Vector           as V
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Language/Hakaru/Syntax/TypeCheck.hs:64:1: warning: [-Wunused-imports]
The import of ‘HBool’

from module ‘Language.Hakaru.Types.DataKind’ is redundant

|
64 | import Language.Hakaru.Types.DataKind (Hakaru(..), HData', HBool)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Language/Hakaru/Syntax/TypeCheck.hs:67:1: warning: [-Wunused-imports]
The import of ‘HEq, HOrd, HSemiring, hEq_Sing, hFractional_Sing,

               hOrd_Sing, hRing_Sing’

from module ‘Language.Hakaru.Types.HClasses’ is redundant

|
67 | import Language.Hakaru.Types.HClasses
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...
haskell/Language/Hakaru/Syntax/TypeCheck.hs:79:1: warning: [-Wunused-imports]
The import of ‘Language.Hakaru.Pretty.Concrete’ is redundant

  except perhaps to import instances from ‘Language.Hakaru.Pretty.Concrete’

To import instances alone, use: import Language.Hakaru.Pretty.Concrete()

|
79 | import Language.Hakaru.Pretty.Concrete (prettyType, prettyTypeT)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Language/Hakaru/Syntax/TypeCheck.hs:198:7: warning: [-Wincomplete-patterns]
Pattern match(es) are non-exhaustive

In a case alternative: Patterns not matched: (MH, _)

|

198 |       case (tr, es) of
|       ^^^^^^^^^^^^^^^^...

haskell/Language/Hakaru/Syntax/TypeCheck.hs:524:19: warning: [-Wname-shadowing]
This binding for ‘t’ shadows the existing binding

  bound at haskell/Language/Hakaru/Syntax/TypeCheck.hs:317:19

|

524 |        U.InjTyped t     -> let t' = t in return $ TypedAST (typeOf t') t'
|                   ^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:534:18: warning: [-Wunused-matches]
Defined but not used: ‘sourceSpan’

|

534 |   inferTransform sourceSpan
|                  ^^^^^^^^^^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:544:18: warning: [-Wunused-matches]
Defined but not used: ‘sourceSpan’

|

544 |   inferTransform sourceSpan
|                  ^^^^^^^^^^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:554:18: warning: [-Wunused-matches]
Defined but not used: ‘sourceSpan’

|

554 |   inferTransform sourceSpan
|                  ^^^^^^^^^^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:569:18: warning: [-Wunused-matches]
Defined but not used: ‘sourceSpan’

|

569 |   inferTransform sourceSpan
|                  ^^^^^^^^^^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:579:18: warning: [-Wunused-matches]
Defined but not used: ‘sourceSpan’

|

579 |   inferTransform sourceSpan
|                  ^^^^^^^^^^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:585:18: warning: [-Wunused-matches]
Defined but not used: ‘sourceSpan’

|

585 |   inferTransform sourceSpan
|                  ^^^^^^^^^^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:591:18: warning: [-Wunused-matches]
Defined but not used: ‘sourceSpan’

|

591 |   inferTransform sourceSpan
|                  ^^^^^^^^^^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:1146:25: warning: [-Wname-shadowing]
This binding for ‘r’ shadows the existing binding

  bound at haskell/Language/Hakaru/Syntax/TypeCheck.hs:1142:21

 |

1146 |                         r <- try (do TypedAST t p <- inferType e
 |                         ^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:1146:47: warning: [-Wname-shadowing]
This binding for ‘t’ shadows the existing binding

  bound at haskell/Language/Hakaru/Syntax/TypeCheck.hs:1065:21

 |

1146 |                         r <- try (do TypedAST t p <- inferType e
 |                                               ^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:1156:25: warning: [-Wname-shadowing]
This binding for ‘bad’ shadows the existing binding

  bound at haskell/Language/Hakaru/Syntax/TypeCheck.hs:1153:38

 |

1156 |                         bad <- checkOrUnsafeCoerce sourceSpan bad typ typ0
 |                         ^^^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:1244:20: warning: [-Wname-shadowing]
This binding for ‘t’ shadows the existing binding

  bound at haskell/Language/Hakaru/Syntax/TypeCheck.hs:1065:21

 |

1244 |         U.InjTyped t ->
 |                    ^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:1305:20: warning: [-Wunused-matches]
Defined but not used: ‘sourceSpan’

 |

1305 |     checkTransform sourceSpan typ0
 |                    ^^^^^^^^^^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:1311:20: warning: [-Wunused-matches]
Defined but not used: ‘sourceSpan’

 |

1311 |     checkTransform sourceSpan typ0
 |                    ^^^^^^^^^^

haskell/Language/Hakaru/Syntax/TypeCheck.hs:1317:20: warning: [-Wunused-matches]
Defined but not used: ‘sourceSpan’

 |

1317 |     checkTransform sourceSpan typ0
 |                    ^^^^^^^^^^

[44 of 69] Compiling Language.Hakaru.Parser.Parser ( haskell/Language/Hakaru/Parser/Parser.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Parser/Parser.o )
[45 of 69] Compiling Language.Hakaru.Parser.Maple ( haskell/Language/Hakaru/Parser/Maple.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Parser/Maple.o )
[46 of 69] Compiling Language.Hakaru.Parser.Import ( haskell/Language/Hakaru/Parser/Import.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Parser/Import.o )
[47 of 69] Compiling Language.Hakaru.Command ( haskell/Language/Hakaru/Command.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Command.o )
haskell/Language/Hakaru/Command.hs:23:1: warning: [-Wunused-imports]
The import of ‘System.Environment’ is redundant

  except perhaps to import instances from ‘System.Environment’

To import instances alone, use: import System.Environment()

|
23 | import           System.Environment (getArgs)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[48 of 69] Compiling Language.Hakaru.Evaluation.PEvalMonad ( haskell/Language/Hakaru/Evaluation/PEvalMonad.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Evaluation/PEvalMonad.o )
haskell/Language/Hakaru/Evaluation/PEvalMonad.hs:144:1: warning: [-Wunused-top-binds]
Defined but not used: ‘mapPPure’

|

144 | mapPPure f (PPure e) = PPure (f e)
| ^^^^^^^^

haskell/Language/Hakaru/Evaluation/PEvalMonad.hs:622:14: warning: [-Wunused-matches]
Defined but not used: ‘f’

|

622 | emitCaseWith f e bs = do
|              ^

haskell/Language/Hakaru/Evaluation/PEvalMonad.hs:622:16: warning: [-Wunused-matches]
Defined but not used: ‘e’

|

622 | emitCaseWith f e bs = do
|                ^

haskell/Language/Hakaru/Evaluation/PEvalMonad.hs:622:18: warning: [-Wunused-matches]
Defined but not used: ‘bs’

|

622 | emitCaseWith f e bs = do
|                  ^^

haskell/Language/Hakaru/Evaluation/PEvalMonad.hs:647:1: warning: [-Wunused-top-binds]
Defined but not used: ‘emitCaseWith_Impure’

|

647 | emitCaseWith_Impure f e bs = do
| ^^^^^^^^^^^^^^^^^^^

[49 of 69] Compiling Language.Hakaru.Evaluation.ExpectMonad ( haskell/Language/Hakaru/Evaluation/ExpectMonad.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Evaluation/ExpectMonad.o )
[50 of 69] Compiling Language.Hakaru.Expect ( haskell/Language/Hakaru/Expect.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Expect.o )
[51 of 69] Compiling Language.Hakaru.Pretty.Maple ( haskell/Language/Hakaru/Pretty/Maple.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Pretty/Maple.o )
haskell/Language/Hakaru/Pretty/Maple.hs:51:1: warning: [-Wunused-imports]
The import of ‘Language.Hakaru.Expect’ is redundant

  except perhaps to import instances from ‘Language.Hakaru.Expect’

To import instances alone, use: import Language.Hakaru.Expect()

|
51 | import Language.Hakaru.Expect
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Language/Hakaru/Pretty/Maple.hs:122:9: warning: [-Wincomplete-patterns]
Pattern match(es) are non-exhaustive

In a case alternative: Patterns not matched: (Bucket _ _ _)

|

122 |         case t of
|         ^^^^^^^^^...

haskell/Language/Hakaru/Pretty/Maple.hs:192:21: warning: [-Wunused-matches]
Defined but not used: ‘e1’

|

192 | mapleSCon Chain = (e1 :* e2 :* e3 :* End) ->
|                     ^^

haskell/Language/Hakaru/Pretty/Maple.hs:192:27: warning: [-Wunused-matches]
Defined but not used: ‘e2’

|

192 | mapleSCon Chain = (e1 :* e2 :* e3 :* End) ->
|                           ^^

haskell/Language/Hakaru/Pretty/Maple.hs:192:33: warning: [-Wunused-matches]
Defined but not used: ‘e3’

|

192 | mapleSCon Chain = (e1 :* e2 :* e3 :* End) ->
|                                 ^^

[52 of 69] Compiling Language.Hakaru.Evaluation.EvalMonad ( haskell/Language/Hakaru/Evaluation/EvalMonad.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Evaluation/EvalMonad.o )
haskell/Language/Hakaru/Evaluation/EvalMonad.hs:211:1: warning: [-Wunused-top-binds]
Defined but not used: ‘emit’

|

211 | emit hint typ f = do
| ^^^^

haskell/Language/Hakaru/Evaluation/EvalMonad.hs:221:1: warning: [-Wunused-top-binds]
Defined but not used: ‘emitLet’

|

221 | emitLet e =
| ^^^^^^^

haskell/Language/Hakaru/Evaluation/EvalMonad.hs:233:1: warning: [-Wunused-top-binds]
Defined but not used: ‘emitLet'’

|

233 | emitLet' e =
| ^^^^^^^^

haskell/Language/Hakaru/Evaluation/EvalMonad.hs:250:1: warning: [-Wunused-top-binds]
Defined but not used: ‘emitUnpair’

|

250 | emitUnpair (Head_   w) = return $ reifyPair w
| ^^^^^^^^^^

haskell/Language/Hakaru/Evaluation/EvalMonad.hs:264:1: warning: [-Wunused-top-binds]
Defined but not used: ‘emitUnpair_’

|

264 | emitUnpair_ x y = loop
| ^^^^^^^^^^^

haskell/Language/Hakaru/Evaluation/EvalMonad.hs:316:1: warning: [-Wunused-top-binds]
Defined but not used: ‘emitFork_’

|

316 | emitFork_ f ms =
| ^^^^^^^^^

haskell/Language/Hakaru/Evaluation/EvalMonad.hs:326:1: warning: [-Wunused-top-binds]
Defined but not used: ‘emitCaseWith’

|

326 | emitCaseWith f e bs = do
| ^^^^^^^^^^^^

[53 of 69] Compiling Language.Hakaru.Evaluation.ConstantPropagation ( haskell/Language/Hakaru/Evaluation/ConstantPropagation.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Evaluation/ConstantPropagation.o )
[54 of 69] Compiling Language.Hakaru.Evaluation.DisintegrationMonad ( haskell/Language/Hakaru/Evaluation/DisintegrationMonad.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Evaluation/DisintegrationMonad.o )
haskell/Language/Hakaru/Evaluation/DisintegrationMonad.hs:738:24: warning: [-Wunused-matches]
Defined but not used: ‘ls’

|

738 |                 SGuard ls pat scrutinee i -> Just . return . Neutral $ var x
|                        ^^

haskell/Language/Hakaru/Evaluation/DisintegrationMonad.hs:738:27: warning: [-Wunused-matches]
Defined but not used: ‘pat’

|

738 |                 SGuard ls pat scrutinee i -> Just . return . Neutral $ var x
|                           ^^^

haskell/Language/Hakaru/Evaluation/DisintegrationMonad.hs:738:31: warning: [-Wunused-matches]
Defined but not used: ‘scrutinee’

|

738 |                 SGuard ls pat scrutinee i -> Just . return . Neutral $ var x
|                               ^^^^^^^^^

haskell/Language/Hakaru/Evaluation/DisintegrationMonad.hs:738:41: warning: [-Wunused-matches]
Defined but not used: ‘i’

|

738 |                 SGuard ls pat scrutinee i -> Just . return . Neutral $ var x
|                                         ^

[55 of 69] Compiling Language.Hakaru.Disintegrate ( haskell/Language/Hakaru/Disintegrate.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Disintegrate.o )
haskell/Language/Hakaru/Disintegrate.hs:109:1: warning: [-Wunused-imports]
The import of ‘Data.Functor.Compose’ is redundant

  except perhaps to import instances from ‘Data.Functor.Compose’

To import instances alone, use: import Data.Functor.Compose()

|

109 | import           Data.Functor.Compose (Compose(..))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:110:1: warning: [-Wunused-imports]
The qualified import of ‘Data.Traversable’ is redundant

  except perhaps to import instances from ‘Data.Traversable’

To import instances alone, use: import Data.Traversable()

|

110 | import qualified Data.Traversable     as T
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:111:1: warning: [-Wunused-imports]
The import of ‘Data.List.NonEmpty’ is redundant

  except perhaps to import instances from ‘Data.List.NonEmpty’

To import instances alone, use: import Data.List.NonEmpty()

|

111 | import           Data.List.NonEmpty   (NonEmpty(..))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:118:1: warning: [-Wunused-imports]
The import of ‘fromMaybe’ from module ‘Data.Maybe’ is redundant

|

118 | import           Data.Maybe           (fromMaybe, fromJust)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:121:1: warning: [-Wunused-imports]
The import of ‘Data.Number.Natural’ is redundant

  except perhaps to import instances from ‘Data.Number.Natural’

To import instances alone, use: import Data.Number.Natural()

|

121 | import Data.Number.Natural
| ^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:445:18: warning: [-Wname-shadowing]
This binding for ‘e’ shadows the existing binding

  bound at haskell/Language/Hakaru/Disintegrate.hs:438:9

|

445 |          Neutral e -> Neutral . unviewABT <$>
|                  ^

haskell/Language/Hakaru/Disintegrate.hs:512:9: warning: [-Wincomplete-patterns]
Pattern match(es) are non-exhaustive

In a case alternative: Patterns not matched: (Bucket _ _ _)

|

512 |         case t of
|         ^^^^^^^^^...

haskell/Language/Hakaru/Disintegrate.hs:543:18: warning: [-Wunused-matches]
Defined but not used: ‘v’

|

543 |         Literal_ v               -> bot -- unsolvable. (kinda; see note)
|                  ^

haskell/Language/Hakaru/Disintegrate.hs:548:20: warning: [-Wunused-matches]
Defined but not used: ‘pes’

|

548 |         Superpose_ pes           -> bot -- giving up.
|                    ^^^

haskell/Language/Hakaru/Disintegrate.hs:579:20: warning: [-Wname-shadowing]
This binding for ‘t’ shadows the existing binding

  bound at haskell/Language/Hakaru/Disintegrate.hs:511:45

|

579 |         Transform_ t :$ _            -> error $
|                    ^

haskell/Language/Hakaru/Disintegrate.hs:649:1: warning: [-Woverlapping-patterns]
Pattern match is redundant

In an equation for ‘constrainValues’: constrainValues _ _ = ...

|

649 | constrainValues _ _ = error "constrainValues: the impossible happened"
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:732:28: warning: [-Wunused-matches]
Defined but not used: ‘ls'’

|

732 |                     SGuard ls' pat scrutinee i -> error "TODO: constrainVariable{SGuard}"
|                            ^^^

haskell/Language/Hakaru/Disintegrate.hs:732:32: warning: [-Wunused-matches]
Defined but not used: ‘pat’

|

732 |                     SGuard ls' pat scrutinee i -> error "TODO: constrainVariable{SGuard}"
|                                ^^^

haskell/Language/Hakaru/Disintegrate.hs:732:36: warning: [-Wunused-matches]
Defined but not used: ‘scrutinee’

|

732 |                     SGuard ls' pat scrutinee i -> error "TODO: constrainVariable{SGuard}"
|                                    ^^^^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:732:46: warning: [-Wunused-matches]
Defined but not used: ‘i’

|

732 |                     SGuard ls' pat scrutinee i -> error "TODO: constrainVariable{SGuard}"
|                                              ^

haskell/Language/Hakaru/Disintegrate.hs:754:19: warning: [-Wunused-matches]
Defined but not used: ‘e1'’

|

754 |           Neutral e1' -> bot
|                   ^^^

haskell/Language/Hakaru/Disintegrate.hs:762:7: warning: [-Woverlapping-patterns]
Pattern match is redundant

In an equation for ‘go’: go _ _ = ...

|

762 |       go _ _ = error "constrainValueArrayOp: unknown arrayOp"
|       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:803:18: warning: [-Wunused-matches]
Defined but not used: ‘tdTrue’

|

803 | isLitTrue (Datum tdTrue sBool (Inl Done)) = True
|                  ^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:803:25: warning: [-Wname-shadowing]
This binding for ‘sBool’ shadows the existing binding

  imported from ‘Language.Hakaru.Types.Sing’ at haskell/Language/Hakaru/Disintegrate.hs:123:1-33

|

803 | isLitTrue (Datum tdTrue sBool (Inl Done)) = True
|                         ^^^^^

haskell/Language/Hakaru/Disintegrate.hs:803:25: warning: [-Wunused-matches]
Defined but not used: ‘sBool’

|

803 | isLitTrue (Datum tdTrue sBool (Inl Done)) = True
|                         ^^^^^

haskell/Language/Hakaru/Disintegrate.hs:807:19: warning: [-Wunused-matches]
Defined but not used: ‘tdFalse’

|

807 | isLitFalse (Datum tdFalse sBool (Inr (Inl Done))) = True
|                   ^^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:807:27: warning: [-Wname-shadowing]
This binding for ‘sBool’ shadows the existing binding

  imported from ‘Language.Hakaru.Types.Sing’ at haskell/Language/Hakaru/Disintegrate.hs:123:1-33

|

807 | isLitFalse (Datum tdFalse sBool (Inr (Inl Done))) = True
|                           ^^^^^

haskell/Language/Hakaru/Disintegrate.hs:807:27: warning: [-Wunused-matches]
Defined but not used: ‘sBool’

|

807 | isLitFalse (Datum tdFalse sBool (Inr (Inl Done))) = True
|                           ^^^^^

haskell/Language/Hakaru/Disintegrate.hs:957:17: warning: [-Wunused-matches]
Defined but not used: ‘e1’

|

957 |     go Not  = (e1 :* End)       -> error_TODO "Not"
|                 ^^

haskell/Language/Hakaru/Disintegrate.hs:958:17: warning: [-Wunused-matches]
Defined but not used: ‘e1’

|

958 |     go Impl = (e1 :* e2 :* End) -> error_TODO "Impl"
|                 ^^

haskell/Language/Hakaru/Disintegrate.hs:958:23: warning: [-Wunused-matches]
Defined but not used: ‘e2’

|

958 |     go Impl = (e1 :* e2 :* End) -> error_TODO "Impl"
|                       ^^

haskell/Language/Hakaru/Disintegrate.hs:959:17: warning: [-Wunused-matches]
Defined but not used: ‘e1’

|

959 |     go Diff = (e1 :* e2 :* End) -> error_TODO "Diff"
|                 ^^

haskell/Language/Hakaru/Disintegrate.hs:959:23: warning: [-Wunused-matches]
Defined but not used: ‘e2’

|

959 |     go Diff = (e1 :* e2 :* End) -> error_TODO "Diff"
|                       ^^

haskell/Language/Hakaru/Disintegrate.hs:960:17: warning: [-Wunused-matches]
Defined but not used: ‘e1’

|

960 |     go Nand = (e1 :* e2 :* End) -> error_TODO "Nand"
|                 ^^

haskell/Language/Hakaru/Disintegrate.hs:960:23: warning: [-Wunused-matches]
Defined but not used: ‘e2’

|

960 |     go Nand = (e1 :* e2 :* End) -> error_TODO "Nand"
|                       ^^

haskell/Language/Hakaru/Disintegrate.hs:961:17: warning: [-Wunused-matches]
Defined but not used: ‘e1’

|

961 |     go Nor  = (e1 :* e2 :* End) -> error_TODO "Nor"
|                 ^^

haskell/Language/Hakaru/Disintegrate.hs:961:23: warning: [-Wunused-matches]
Defined but not used: ‘e2’

|

961 |     go Nor  = (e1 :* e2 :* End) -> error_TODO "Nor"
|                       ^^

haskell/Language/Hakaru/Disintegrate.hs:1018:22: warning: [-Wunused-matches]
Defined but not used: ‘e1’

 |

1018 |     go Sinh      = (e1 :* End)       -> error_TODO "Sinh"
 |                      ^^

haskell/Language/Hakaru/Disintegrate.hs:1019:22: warning: [-Wunused-matches]
Defined but not used: ‘e1’

 |

1019 |     go Cosh      = (e1 :* End)       -> error_TODO "Cosh"
 |                      ^^

haskell/Language/Hakaru/Disintegrate.hs:1020:22: warning: [-Wunused-matches]
Defined but not used: ‘e1’

 |

1020 |     go Tanh      = (e1 :* End)       -> error_TODO "Tanh"
 |                      ^^

haskell/Language/Hakaru/Disintegrate.hs:1021:22: warning: [-Wunused-matches]
Defined but not used: ‘e1’

 |

1021 |     go Asinh     = (e1 :* End)       -> error_TODO "Asinh"
 |                      ^^

haskell/Language/Hakaru/Disintegrate.hs:1022:22: warning: [-Wunused-matches]
Defined but not used: ‘e1’

 |

1022 |     go Acosh     = (e1 :* End)       -> error_TODO "Acosh"
 |                      ^^

haskell/Language/Hakaru/Disintegrate.hs:1023:22: warning: [-Wunused-matches]
Defined but not used: ‘e1’

 |

1023 |     go Atanh     = (e1 :* End)       -> error_TODO "Atanh"
 |                      ^^

haskell/Language/Hakaru/Disintegrate.hs:1024:22: warning: [-Wunused-matches]
Defined but not used: ‘e1’

 |

1024 |     go Choose    = (e1 :* e2 :* End) -> error_TODO "Choose"
 |                      ^^

haskell/Language/Hakaru/Disintegrate.hs:1024:28: warning: [-Wunused-matches]
Defined but not used: ‘e2’

 |

1024 |     go Choose    = (e1 :* e2 :* End) -> error_TODO "Choose"
 |                            ^^

haskell/Language/Hakaru/Disintegrate.hs:1025:22: warning: [-Wunused-matches]
Defined but not used: ‘e1’

 |

1025 |     go Floor     = (e1 :* End)       -> error_TODO "Floor"
 |                      ^^

haskell/Language/Hakaru/Disintegrate.hs:1070:29: warning: [-Wunused-matches]
Defined but not used: ‘e1’

 |

1070 |     go GammaFunc        = (e1 :* End)       -> error_TODO "GammaFunc" -- scalar1
 |                             ^^

haskell/Language/Hakaru/Disintegrate.hs:1071:29: warning: [-Wunused-matches]
Defined but not used: ‘e1’

 |

1071 |     go BetaFunc         = (e1 :* e2 :* End) -> error_TODO "BetaFunc" -- scalar2
 |                             ^^

haskell/Language/Hakaru/Disintegrate.hs:1071:35: warning: [-Wunused-matches]
Defined but not used: ‘e2’

 |

1071 |     go BetaFunc         = (e1 :* e2 :* End) -> error_TODO "BetaFunc" -- scalar2
 |                                   ^^

haskell/Language/Hakaru/Disintegrate.hs:1072:16: warning: [-Wunused-matches]
Defined but not used: ‘theOrd’

 |

1072 |     go (Equal  theOrd)  = (e1 :* e2 :* End) -> error_TODO "Equal"
 |                ^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:1072:29: warning: [-Wunused-matches]
Defined but not used: ‘e1’

 |

1072 |     go (Equal  theOrd)  = (e1 :* e2 :* End) -> error_TODO "Equal"
 |                             ^^

haskell/Language/Hakaru/Disintegrate.hs:1072:35: warning: [-Wunused-matches]
Defined but not used: ‘e2’

 |

1072 |     go (Equal  theOrd)  = (e1 :* e2 :* End) -> error_TODO "Equal"
 |                                   ^^

haskell/Language/Hakaru/Disintegrate.hs:1073:16: warning: [-Wunused-matches]
Defined but not used: ‘theOrd’

 |

1073 |     go (Less   theOrd)  = (e1 :* e2 :* End) -> error_TODO "Less"
 |                ^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:1073:29: warning: [-Wunused-matches]
Defined but not used: ‘e1’

 |

1073 |     go (Less   theOrd)  = (e1 :* e2 :* End) -> error_TODO "Less"
 |                             ^^

haskell/Language/Hakaru/Disintegrate.hs:1073:35: warning: [-Wunused-matches]
Defined but not used: ‘e2’

 |

1073 |     go (Less   theOrd)  = (e1 :* e2 :* End) -> error_TODO "Less"
 |                                   ^^

haskell/Language/Hakaru/Disintegrate.hs:1074:16: warning: [-Wunused-matches]
Defined but not used: ‘theSemi’

 |

1074 |     go (NatPow theSemi) = (e1 :* e2 :* End) -> error_TODO "NatPow"
 |                ^^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:1074:29: warning: [-Wunused-matches]
Defined but not used: ‘e1’

 |

1074 |     go (NatPow theSemi) = (e1 :* e2 :* End) -> error_TODO "NatPow"
 |                             ^^

haskell/Language/Hakaru/Disintegrate.hs:1074:35: warning: [-Wunused-matches]
Defined but not used: ‘e2’

 |

1074 |     go (NatPow theSemi) = (e1 :* e2 :* End) -> error_TODO "NatPow"
 |                                   ^^

haskell/Language/Hakaru/Disintegrate.hs:1139:13: warning: [-Wunused-matches]
Defined but not used: ‘theContinuous’

 |

1139 |     go (Erf theContinuous) = (e1 :* End) ->
 |             ^^^^^^^^^^^^^

haskell/Language/Hakaru/Disintegrate.hs:1139:32: warning: [-Wunused-matches]
Defined but not used: ‘e1’

 |

1139 |     go (Erf theContinuous) = (e1 :* End) ->
 |                                ^^

haskell/Language/Hakaru/Disintegrate.hs:1223:16: warning: [-Wunused-matches]
Defined but not used: ‘e1’

 |

1223 |     go (WChain e1 e2 e3)     = error "TODO: constrainOutcome{Chain}"
 |                ^^

haskell/Language/Hakaru/Disintegrate.hs:1223:19: warning: [-Wunused-matches]
Defined but not used: ‘e2’

 |

1223 |     go (WChain e1 e2 e3)     = error "TODO: constrainOutcome{Chain}"
 |                   ^^

haskell/Language/Hakaru/Disintegrate.hs:1223:22: warning: [-Wunused-matches]
Defined but not used: ‘e3’

 |

1223 |     go (WChain e1 e2 e3)     = error "TODO: constrainOutcome{Chain}"
 |                      ^^

haskell/Language/Hakaru/Disintegrate.hs:1224:17: warning: [-Wunused-matches]
Defined but not used: ‘typ’

 |

1224 |     go (WReject typ)         = emit_ $ \m -> P.reject (typeOf m)
 |                 ^^^

[56 of 69] Compiling Language.Hakaru.Inference ( haskell/Language/Hakaru/Inference.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Inference.o )
haskell/Language/Hakaru/Inference.hs:49:1: warning: [-Wunused-imports]
The import of ‘disintegrateInCtx’

from module ‘Language.Hakaru.Disintegrate’ is redundant

|
49 | import Language.Hakaru.Disintegrate (determine
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...
haskell/Language/Hakaru/Inference.hs:52:1: warning: [-Wunused-imports]
The import of ‘Language.Hakaru.Syntax.IClasses’ is redundant

  except perhaps to import instances from ‘Language.Hakaru.Syntax.IClasses’

To import instances alone, use: import Language.Hakaru.Syntax.IClasses()

|
52 | import Language.Hakaru.Syntax.IClasses (TypeEq(..), JmEq1(..))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Language/Hakaru/Inference.hs:55:1: warning: [-Wunused-imports]
The import of ‘Control.Monad.Except’ is redundant

  except perhaps to import instances from ‘Control.Monad.Except’

To import instances alone, use: import Control.Monad.Except()

|
55 | import Control.Monad.Except (MonadError(..))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Language/Hakaru/Inference.hs:57:1: warning: [-Wunused-imports]
The qualified import of ‘Control.Applicative’ is redundant

  except perhaps to import instances from ‘Control.Applicative’

To import instances alone, use: import Control.Applicative()

|
57 | import qualified Control.Applicative as P
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[57 of 69] Compiling Language.Hakaru.Maple ( haskell/Language/Hakaru/Maple.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Maple.o )
[58 of 69] Compiling Language.Hakaru.Syntax.AST.Transforms ( haskell/Language/Hakaru/Syntax/AST/Transforms.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Syntax/AST/Transforms.o )
haskell/Language/Hakaru/Syntax/AST/Transforms.hs:35:1: warning: [-Wunused-imports]
The import of ‘Data.Ratio’ is redundant

  except perhaps to import instances from ‘Data.Ratio’

To import instances alone, use: import Data.Ratio()

|
35 | import Data.Ratio (numerator, denominator)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Language/Hakaru/Syntax/AST/Transforms.hs:36:1: warning: [-Wunused-imports]
The import of ‘Sing, sing’

from module ‘Language.Hakaru.Types.Sing’ is redundant

|
36 | import Language.Hakaru.Types.Sing (sing, Sing(..), sUnFun)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Language/Hakaru/Syntax/AST/Transforms.hs:37:1: warning: [-Wunused-imports]
The import of ‘Language.Hakaru.Types.HClasses’ is redundant

  except perhaps to import instances from ‘Language.Hakaru.Types.HClasses’

To import instances alone, use: import Language.Hakaru.Types.HClasses()

|
37 | import Language.Hakaru.Types.HClasses (HFractional(..))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Language/Hakaru/Syntax/AST/Transforms.hs:38:1: warning: [-Wunused-imports]
The import of ‘Language.Hakaru.Types.Coercion’ is redundant

  except perhaps to import instances from ‘Language.Hakaru.Types.Coercion’

To import instances alone, use: import Language.Hakaru.Types.Coercion()

|
38 | import Language.Hakaru.Types.Coercion (findCoercion, Coerce(..))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Language/Hakaru/Syntax/AST/Transforms.hs:39:1: warning: [-Wunused-imports]
The qualified import of ‘Data.Sequence’ is redundant

  except perhaps to import instances from ‘Data.Sequence’

To import instances alone, use: import Data.Sequence()

|
39 | import qualified Data.Sequence as Seq
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Language/Hakaru/Syntax/AST/Transforms.hs:44:1: warning: [-Wunused-imports]
The import of ‘Alternative’

from module ‘Control.Applicative’ is redundant

|
44 | import Control.Applicative (Applicative(..), Alternative(..), (<$>), (<$))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[59 of 69] Compiling Language.Hakaru.Simplify ( haskell/Language/Hakaru/Simplify.hs, dist/build/system-testsuite/system-testsuite-tmp/Language/Hakaru/Simplify.o )
haskell/Language/Hakaru/Simplify.hs:53:19: warning: [-Wunused-foralls]
Unused quantified type variable ‘a’

In the type ‘forall abt a.

             (ABT Term (abt Term)) =>

             TypedAST (abt Term) -> IO (TypedAST (abt Term))’

|
53 |     :: forall abt a
|                   ^
[60 of 69] Compiling Tests.Parser     ( haskell/Tests/Parser.hs, dist/build/system-testsuite/system-testsuite-tmp/Tests/Parser.o )
haskell/Tests/Parser.hs:16:1: warning: [-Wunused-imports]
The import of ‘Data.Function’ is redundant

  except perhaps to import instances from ‘Data.Function’

To import instances alone, use: import Data.Function()

|
16 | import Data.Function (on)
| ^^^^^^^^^^^^^^^^^^^^^^^^^
[61 of 69] Compiling Tests.TestTools  ( haskell/Tests/TestTools.hs, dist/build/system-testsuite/system-testsuite-tmp/Tests/TestTools.o )
haskell/Tests/TestTools.hs:17:1: warning: [-Wunused-imports]
The import of ‘Language.Hakaru.Parser.Parser’ is redundant

  except perhaps to import instances from ‘Language.Hakaru.Parser.Parser’

To import instances alone, use: import Language.Hakaru.Parser.Parser()

|
17 | import Language.Hakaru.Parser.Parser (parseHakaru)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Tests/TestTools.hs:18:1: warning: [-Wunused-imports]
The import of ‘Language.Hakaru.Parser.SymbolResolve’ is redundant

  except perhaps to import instances from ‘Language.Hakaru.Parser.SymbolResolve’

To import instances alone, use: import Language.Hakaru.Parser.SymbolResolve()

|
18 | import Language.Hakaru.Parser.SymbolResolve (resolveAST)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Tests/TestTools.hs:173:18: warning: [-Wname-shadowing]
This binding for ‘t’ shadows the existing binding

  bound at haskell/Tests/TestTools.hs:170:22

|

173 |           mapM (\t -> fileSource t <$> IO.readFile t) [t0', t1'] >>= [t0,t1] ->
|                  ^

[62 of 69] Compiling Tests.Simplify   ( haskell/Tests/Simplify.hs, dist/build/system-testsuite/system-testsuite-tmp/Tests/Simplify.o )
[63 of 69] Compiling Tests.RoundTrip  ( haskell/Tests/RoundTrip.hs, dist/build/system-testsuite/system-testsuite-tmp/Tests/RoundTrip.o )
haskell/Tests/RoundTrip.hs:18:1: warning: [-Wunused-imports]
The import of ‘++, Bool, FilePath, Show, String, asTypeOf, concat’

from module ‘Prelude’ is redundant

|
18 | import           Prelude ((.), ($), asTypeOf, String, FilePath, Show(..), (++), Bool(..), concat)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Tests/RoundTrip.hs:19:1: warning: [-Wunused-imports]
The qualified import of ‘Prelude’ is redundant

  except perhaps to import instances from ‘Prelude’

To import instances alone, use: import Prelude()

|
19 | import qualified Prelude
| ^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Tests/RoundTrip.hs:21:1: warning: [-Wunused-imports]
The import of ‘Data.Ratio’ is redundant

  except perhaps to import instances from ‘Data.Ratio’

To import instances alone, use: import Data.Ratio()

|
21 | import           Data.Ratio
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Tests/RoundTrip.hs:22:1: warning: [-Wunused-imports]
The qualified import of ‘Data.Text.Utf8’ is redundant

  except perhaps to import instances from ‘Data.Text.Utf8’

To import instances alone, use: import Data.Text.Utf8()

|
22 | import qualified Data.Text.Utf8 as IO
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Tests/RoundTrip.hs:26:1: warning: [-Wunused-imports]
The import of ‘Language.Hakaru.Pretty.Concrete’ is redundant

  except perhaps to import instances from ‘Language.Hakaru.Pretty.Concrete’

To import instances alone, use: import Language.Hakaru.Pretty.Concrete()

|
26 | import Language.Hakaru.Pretty.Concrete (pretty)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Tests/RoundTrip.hs:27:1: warning: [-Wunused-imports]
The import of ‘PrimOp’

from module ‘Language.Hakaru.Syntax.AST’ is redundant

|
27 | import Language.Hakaru.Syntax.AST (Term, PrimOp(..))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Tests/RoundTrip.hs:28:1: warning: [-Wunused-imports]
The import of ‘Language.Hakaru.Syntax.AST.Transforms’ is redundant

  except perhaps to import instances from ‘Language.Hakaru.Syntax.AST.Transforms’

To import instances alone, use: import Language.Hakaru.Syntax.AST.Transforms()

|
28 | import Language.Hakaru.Syntax.AST.Transforms
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Tests/RoundTrip.hs:29:1: warning: [-Wdodgy-imports]
The import item ‘TrivialABT(..)’ suggests that

‘TrivialABT’ has (in-scope) constructors or class methods,

but it has none

|
29 | import Language.Hakaru.Syntax.ABT (ABT, TrivialABT(..))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Tests/RoundTrip.hs:29:1: warning: [-Wunused-imports]
The import of ‘TrivialABT’

from module ‘Language.Hakaru.Syntax.ABT’ is redundant

|
29 | import Language.Hakaru.Syntax.ABT (ABT, TrivialABT(..))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Tests/RoundTrip.hs:30:1: warning: [-Wunused-imports]
The import of ‘Language.Hakaru.Expect’ is redundant

  except perhaps to import instances from ‘Language.Hakaru.Expect’

To import instances alone, use: import Language.Hakaru.Expect()

|
30 | import Language.Hakaru.Expect     (total)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Tests/RoundTrip.hs:31:1: warning: [-Wunused-imports]
The import of ‘Language.Hakaru.Inference’ is redundant

  except perhaps to import instances from ‘Language.Hakaru.Inference’

To import instances alone, use: import Language.Hakaru.Inference()

|
31 | import Language.Hakaru.Inference  (priorAsProposal, mcmc, mh)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Tests/RoundTrip.hs:33:1: warning: [-Wunused-imports]
The import of ‘System.IO’ is redundant

  except perhaps to import instances from ‘System.IO’

To import instances alone, use: import System.IO()

|
33 | import System.IO
| ^^^^^^^^^^^^^^^^
haskell/Tests/RoundTrip.hs:34:1: warning: [-Wunused-imports]
The import of ‘System.Directory’ is redundant

  except perhaps to import instances from ‘System.Directory’

To import instances alone, use: import System.Directory()

|
34 | import System.Directory
| ^^^^^^^^^^^^^^^^^^^^^^^
haskell/Tests/RoundTrip.hs:35:1: warning: [-Wunused-imports]
The import of ‘Control.Monad’ is redundant

  except perhaps to import instances from ‘Control.Monad’

To import instances alone, use: import Control.Monad()

|
35 | import Control.Monad (mapM_, Monad(return))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Tests/RoundTrip.hs:36:1: warning: [-Wunused-imports]
The import of ‘Data.Foldable’ is redundant

  except perhaps to import instances from ‘Data.Foldable’

To import instances alone, use: import Data.Foldable()

|
36 | import Data.Foldable (null)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Tests/RoundTrip.hs:37:1: warning: [-Wunused-imports]
The import of ‘Data.List’ is redundant

  except perhaps to import instances from ‘Data.List’

To import instances alone, use: import Data.List()

|
37 | import Data.List (intercalate)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
haskell/Tests/RoundTrip.hs:39:1: warning: [-Wunused-imports]
The qualified import of ‘Data.Text’ is redundant

  except perhaps to import instances from ‘Data.Text’

To import instances alone, use: import Data.Text()