glaebhoerl / type-eq Goto Github PK
View Code? Open in Web Editor NEWType equality evidence you can carry around
Home Page: http://hackage.haskell.org/package/type-eq
License: Other
Type equality evidence you can carry around
Home Page: http://hackage.haskell.org/package/type-eq
License: Other
Apart from bumping upper bounds, there's this build failure:
Type/Eq/Higher.hs:18:8:
Could not find module ‘Data.OldTypeable’
Perhaps you meant Data.Typeable (from base-4.8.0.0)
Use -v to see a list of the files searched for.
While trying to cabal install type-eq 0.4.1 using cpphs 1.18.2 I get "Cannot parse #if directive" error.
type-eq 0.4 with cpphs 1.18.2 works
type-eq 0.4.1 with cpphs 1.18.1 also works
Note that cpphs 1.18.2 incorrectly reports version 1.18.1 to console when invoked with --version parameter:
~/src/type-eq-0.4.1 $ cpphs --version
cpphs 1.18.1
~/src/type-eq-0.4.1 $ ghc-pkg list | grep -i cpphs
cpphs-1.18.2
~/src/type-eq-0.4.1 $ cabal build
Building type-eq-0.4.1...
Preprocessing library type-eq-0.4.1...
cpphs: Cannot parse #if directive in file ./Type/Eq.hs at line 28 col 1
I'm not sure if this is type-eq bug or cpphs bug, since I don't know if the offending line is correct cpphs code. Sorry if this should be reported to cpphs instead.
There seems to be problems with macro expansion using clang on OS X Mavericks, see this stackoverflow post https://stackoverflow.com/questions/20785260/cant-install-fay-on-mac-os-x-mavericks/20801824
The suggested fix there is to wipe the haskell-platform installation and compile it using homebrew and switching it to use gcc rather than clang.
This is a bit inconvenient and will probably trip up users. Is there anything that can be done about it?
Cheers
(See faylang/fay#432 for original issue.)
It looks like the type-eq
package has an undeclared dependency on the cpphs
package.
> cabal install fay fay-base
Resolving dependencies...
Downloading data-lens-light-0.1.2.1...
Configuring ghc-paths-0.1.0.9...
Downloading mtl-compat-0.2.1.3...
Downloading polyparse-1.11...
Configuring data-lens-light-0.1.2.1...
Configuring mtl-compat-0.2.1.3...
Downloading safe-0.3.8...
Configuring safe-0.3.8...
Downloading sourcemap-0.1.3.0...
Downloading spoon-0.3.1...
Downloading traverse-with-class-0.2.0.3...
Downloading type-eq-0.5...
Building data-lens-light-0.1.2.1...
Building mtl-compat-0.2.1.3...
Building safe-0.3.8...
Installed mtl-compat-0.2.1.3
Configuring polyparse-1.11...
Building ghc-paths-0.1.0.9...
Building polyparse-1.11...
Configuring sourcemap-0.1.3.0...
Installed ghc-paths-0.1.0.9
Building sourcemap-0.1.3.0...
Configuring spoon-0.3.1...
Installed safe-0.3.8
Configuring traverse-with-class-0.2.0.3...
Installed data-lens-light-0.1.2.1
Building spoon-0.3.1...
Building traverse-with-class-0.2.0.3...
Configuring type-eq-0.5...
Installed spoon-0.3.1
Failed to install type-eq-0.5
Build log ( /Users/jhf/.cabal/logs/type-eq-0.5.log ):
Configuring type-eq-0.5...
setup-Simple-Cabal-1.22.2.0-x86_64-osx-ghc-7.8.3: The program 'cpphs' is
required but it could not be found.
Installed sourcemap-0.1.3.0
Installed traverse-with-class-0.2.0.3
Installed polyparse-1.11
Downloading cpphs-1.19...
Configuring cpphs-1.19...
Building cpphs-1.19...
Installed cpphs-1.19
Downloading haskell-src-exts-1.16.0.1...
Configuring haskell-src-exts-1.16.0.1...
Building haskell-src-exts-1.16.0.1...
Installed haskell-src-exts-1.16.0.1
Updating documentation index
/Users/jhf/Library/Haskell/share/doc/x86_64-osx-ghc-7.8.3/index.html
cabal: Error: some packages failed to install:
fay-0.23.1.4 depends on type-eq-0.5 which failed to install.
fay-base-0.20.0.0 depends on type-eq-0.5 which failed to install.
type-eq-0.5 failed during the configure step. The exception was:
ExitFailure 1
> cabal install fay fay-base
Resolving dependencies...
Configuring type-eq-0.5...
Building type-eq-0.5...
Installed type-eq-0.5
Downloading fay-0.23.1.4...
Configuring fay-0.23.1.4...
Building fay-0.23.1.4...
Installed fay-0.23.1.4
Downloading fay-base-0.20.0.0...
Configuring fay-base-0.20.0.0...
Building fay-base-0.20.0.0...
Installed fay-base-0.20.0.0
Updating documentation index
/Users/jhf/Library/Haskell/share/doc/x86_64-osx-ghc-7.8.3/index.html
>
My machine:
jhf@baal ~> cabal --version
cabal-install version 1.22.2.0
using version 1.22.2.0 of the Cabal library
jhf@baal ~> ghc --version
The Glorious Glasgow Haskell Compilation System, version 7.8.3
jhf@baal ~> system_profiler SPSoftwareDataType
Software:
System Software Overview:
System Version: OS X 10.10.2 (14C1514)
Kernel Version: Darwin 14.1.0
...
I see the same error reported here: http://hackage.haskell.org/package/type-eq-0.5/reports/1
As far as I can tell, the library doesn't currently offer fully general ways to eliminate equality without leaning on GHC's fancy equality constraint propagation. The bare-bones basic function is
-- | Eliminate equality evidence
useEq :: a :~: b -> f a -> f b
useEq Refl x = x
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.