Dependencies for seqaid-0.4.0.0

library
seqaid
seqaidpp

Flags

Manual Flags

NameDescriptionDefault
hello_hackage_visitor
Note to those reading on Hackage:
Please ignore these flags, which would be better presented in a collapsed state. The flags are mostly for development purposes.
Disabled
ghc_710

(Still broken for GHC 7.10.) Until I learn how to test GHC version in the .cabal file, we need a flag, since some build-depends must be excluded completely. (CPP testing GLASGOW_HASKELL is then used the rest of the way, in the source files.)

Disabled
sai_fork

.

Disabled
try_inject_noinline_on_requested_binds

If we can prevent inlining of injected binds (without requiring user edits), that would probably be a good trade-off in terms of lost optimiser opportunities in exchange for assurance that the bind won't be inlined. This didn't work, and is a poor solution anyway.

Disabled
seqable_only

Like NFDATAN_ONLY, but for newer Seqable module.

Disabled
th_type_in_types_ann

Actually this is just preparatory, haven't gone down this road far yet. (We would like a TH.Type to Type.Type conversion function in the GHC API. Then we'd just send the list of Type.Type for direct use by the Core-plugin downstream).

Disabled
seqaidpp_types

Rather than choose types to seqinj for based on the types of the top-level binds, use seqaidpp to parse the types from seqaid.config. This stays on perpetually, finally, and could be removed soon.

Enabled
infer_top_level_types

If True, then TH will be used as it has been, to blanket-inject all top-level functions (at least, those not explicitly or implicitly excluded). Now, if False, only RHS's with result types in the "types" list for the module (in seqaid.config) will be wrapped (again, at least those not explicitly or implicitly excluded).

Disabled
demo_mode

This is the only working mode so far. (And it only works when tested on the "leaky" package.) The switch exists to exclude hashable/hashtables deps (and subdeps) from the first release, while I can continue to work on this aspect in the development head.

Enabled
dbg_seqaid

When set, seqaidDispatch emits status lines periodically.

Enabled
no_top_level_seqinj_dummies

If have to inject a class and instance anyway to evade DCE, no need for the old top-level seqinj_ declarations (we hope...). (But it turned out they were all still needed.)

Disabled
nfdatan_only

To simplify debugging.

Disabled
show_type

Include Typeable instance for (show . typeOf) in seqaidDispatch

Enabled
use_cpphs

The original intention was to make this a non-manual flag, to allow the build system to try cpphs first, and if that fails, then to try system-wide cpp (typically GNU). Due to path problems, when the build client installs cpphs in the course of installing, it turns out to be better to use a shell script to delegate which cpp runs, jimmy options, etc.

Enabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info