fusion: if producers appear in the output, they had better be working with manifest data
cpp wibble
Merge pull request #88 from iu-parfunc/master

Needed for compilation fix to backend-kit: expose Trafo.Sharing
haddock: hide sharing module
a note for 'constant' in user docs
Fixed C types.
Revert "fusion: if producers appear in the output, they had better be working with manifest data"

This reverts commit a9ea18db478957999c0c790f822855a41dd860b9.

For consistency and to simplify backend implementation, keep array arguments in delayed form. The only exception to this is when we reintroduce reshape, which must have a manifest argument in order to operate in constant time. This makes pretty printing a bit messier.
pretty printing hack for delayed arrays
debugging functions to show term names
basic array prj/tuple elimination
fusion/alet: simplify, bug fix

Some stray cases of "let binding not eliminated" should all be fixed. We need invoke a few extra compute/delay rounds, but in exchange the final shrinking step is not needed and the implementation is simpler.
Representation/Sugar.dim ignore its argument

thus can be used with dummy arguments:
> dim (undefined :: DIM3) = 3
spelling corrections
interpreter: export run1
warning police
add much information to the cabal file
cabal: remove unused llvm flag
compile fix
improvements to take, drop, slit
cabal wibbles