# Glasgow Haskell Compiler Users Guide

# Index

Symbols | _ | A | B | C | D | E | F | G | H | I | K | L | M | N | O | P | Q | R | S | T | U | V | W | Y

## Symbols

+RTS +t option in GHCi --exclude-module GHC option --force ghc-pkg option --frontend GHC option --global ghc-pkg option --help GHC option ghc-pkg option --info GHC option RTS option --install-signal-handlers RTS option --interactive GHC option --ipid ghc-pkg option --machine-readable RTS option --make GHC option mode of GHC --mk-dll GHC option --numeric-version GHC option --package-key ghc-pkg option --print-libdir GHC option --RTS --show-iface GHC option, [1] --show-options GHC option --supported-extensions GHC option --supported-languages GHC option --user ghc-pkg option --verbose ghc-pkg option --version GHC option ghc-pkg option -? GHC option ghc-pkg option hp2ps command line option -A RTS option -A⟨size⟩ RTS option -B RTS option -b hp2ps command line option -C GHC option RTS option, [1] -c GHC option, [1] RTS option hp2ps command line option -clear-package-db GHC option -cpp GHC option -cpp vs string gaps -D RTS option -d hp2ps command line option -D <symbol>[ GHC option -dcmm-lint GHC option -dcore-lint GHC option -ddump options -ddump-asm GHC option -ddump-bcos GHC option -ddump-cmm GHC option -ddump-core-stats GHC option -ddump-cse GHC option -ddump-deriv GHC option -ddump-ds GHC option -ddump-foreign GHC option -ddump-hi GHC option -ddump-hi-diffs GHC option -ddump-if-trace GHC option -ddump-inlinings GHC option -ddump-llvm GHC option -ddump-minimal-imports GHC option -ddump-mod-cycles GHC option -ddump-occur-anal GHC option -ddump-opt-cmm GHC option -ddump-parsed GHC option -ddump-prep GHC option -ddump-rn GHC option -ddump-rn-stats GHC option -ddump-rn-trace GHC option -ddump-rule-firings GHC option -ddump-rule-rewrites GHC option -ddump-rules GHC option -ddump-simpl GHC option -ddump-simpl-iterations GHC option -ddump-simpl-stats GHC option -ddump-spec GHC option -ddump-splices GHC option -ddump-stg GHC option -ddump-str-signatures GHC option -ddump-stranal GHC option -ddump-tc GHC option -ddump-tc-trace GHC option -ddump-to-file GHC option -ddump-types GHC option -ddump-vect GHC option -ddump-vt-trace GHC option -ddump-worker-wrapper GHC option -debug GHC option -dep-makefile GHC option -dep-suffix GHC option -dfaststring-stats GHC option -dinitial-unique GHC option -distrust GHC option, [1] -distrust-all GHC option -distrust-all-packages GHC option -dno-debug-output GHC option -dppr-case-as-let GHC option -dppr-cols GHC option -dppr-debug GHC option -dppr-user-length GHC option -dshow-passes GHC option -dstg-lint GHC option -dsuppress-all GHC option -dsuppress-coercions GHC option -dsuppress-idinfo GHC option -dsuppress-module-prefixes GHC option -dsuppress-type-applications GHC option -dsuppress-type-signatures GHC option -dsuppress-unfoldings GHC option -dsuppress-uniques GHC option -dth-dec-file GHC option -dumpdir GHC option -dunique-increment GHC option -dverbose-core2core GHC option -dverbose-stg2stg GHC option -dylib-install-name GHC option -dynamic GHC option -dynamic-too GHC option -dynload GHC option -E GHC option -e GHC option -e<float>[in|mm|pt] hp2ps command line option -eventlog GHC option -F GHC option RTS option -f ghc-pkg option -f\* options (GHC) -fasm GHC option -fbreak-on-error GHC option -fbreak-on-exception GHC option -fbyte-code GHC option -fcall-arity GHC option -fcase-merge GHC option -fcmm-elim-common-blocks GHC option -fcmm-sink GHC option -fcpr-off GHC option -fcross-module-specialise GHC option -fcse GHC option -fdefer-out-of-scope-variables GHC option -fdefer-type-errors GHC option -fdefer-typed-holes GHC option -fdicts-cheap GHC option -fdicts-strict GHC option -fdmd-tx-dict-sel GHC option -fdo-eta-reduction GHC option -fdo-lambda-eta-expansion GHC option -feager-blackholing GHC option, [1] -fenable-rewrite-rules GHC option -ferror-spans GHC option -fexcess-precision GHC option -fexpose-all-unfoldings GHC option -fexternal-interpreter GHC option -ffloat-in GHC option -fforce-recomp GHC option -ffull-laziness GHC option -ffun-to-thunk GHC option -fghci-hist-size GHC option -fglasgow-exts GHC option -fhelpful-errors GHC option -fhpc GHC option -fignore-asserts GHC option -fignore-interface-pragmas GHC option -flate-dmd-anal GHC option -fliberate-case GHC option -fliberate-case-threshold GHC option -fllvm GHC option -floopification GHC option -fmax-inline-alloc-size GHC option -fmax-inline-memcpy-insn GHC option -fmax-inline-memset-insns GHC option -fmax-pmcheck-iterations GHC option -fmax-relevant-binds GHC option -fmax-simplifier-iterations GHC option -fmax-worker-args GHC option -fno-\* options (GHC) -fno-code GHC option -fno-embed-manifest GHC option -fno-gen-manifest GHC option -fno-implicit-import-qualified -fno-max-relevant-bindings GHC option -fno-opt-coercion GHC option -fno-pre-inlining GHC option -fno-prof-auto GHC option -fno-prof-cafs GHC option -fno-prof-count-entries GHC option -fno-shared-implib GHC option -fno-state-hack GHC option -fobject-code GHC option -fomit-interface-pragmas GHC option -fomit-yields GHC option -foptimal-applicative-do GHC option -fpackage-trust GHC option -fpedantic-bottoms GHC option -fPIC GHC option -fplugin GHC option -fplugin-opt GHC option -fprint-bind-result GHC option -fprint-equality-relations GHC option -fprint-expanded-synonyms GHC option -fprint-explicit-coercions GHC option -fprint-explicit-foralls GHC option -fprint-explicit-kinds GHC option -fprint-explicit-runtime-reps GHC option -fprint-potential-instances GHC option -fprint-typechecker-elaboration GHC option -fprint-unicode-syntax GHC option -fprof-auto GHC option -fprof-auto-calls GHC option -fprof-auto-exported GHC option -fprof-auto-top GHC option -fprof-cafs GHC option -framework GHC option -framework-path GHC option -fregs-graph GHC option -fregs-iterative GHC option -fshow-warning-groups GHC option -fsimpl-tick-factor GHC option -fsimplifier-phases GHC option -fspec-constr GHC option -fspec-constr-count GHC option -fspec-constr-threshold GHC option -fspecialise GHC option -fstatic-argument-transformation GHC option -fstrictness GHC option -fstrictness-before GHC option -funbox-small-strict-fields GHC option -funbox-strict-fields GHC option -funfolding-creation-threshold GHC option -funfolding-dict-discount GHC option -funfolding-fun-discount GHC option -funfolding-keeness-factor GHC option -funfolding-use-threshold GHC option -funfolding-use-threshold0 option -fvectorisation-avoidance GHC option -fvectorise GHC option -fvia-C -fwrite-interface GHC option -G RTS option -g hp2ps command line option -G RTS option -ghci-script GHC option -global-package-db GHC option -H GHC option RTS option, [1] -h RTS option -hb RTS option -hc RTS option -hcsuf GHC option -hd RTS option -hide-all-packages GHC option -hide-all-plugin-packages GHC option -hide-package GHC option -hidir GHC option -hisuf GHC option -hm RTS option -hr RTS option -hT RTS option -hy RTS option -h⟨break-down⟩ -I GHC option RTS option -i GHC option RTS option -ignore-dot-ghci GHC option -ignore-package GHC option -include-pkg-deps GHC option -interactive-print GHC option -i⟨dir⟩[:⟨dir⟩]* GHC option -j GHC option -K RTS option -kb RTS option -kc RTS option -keep-hc-file GHC option -keep-hc-files GHC option -keep-llvm-file GHC option -keep-llvm-files GHC option -keep-s-file GHC option -keep-s-files GHC option -keep-tmp-files GHC option -ki RTS option -L GHC option RTS option, [1] -l GHC option RTS option hp2ps command line option -library-name GHC option -M GHC option RTS option -m RTS option -m<int> hp2ps command line option -m\* options -main-is GHC option -maxN RTS option -msse2 GHC option -msse2 option -N RTS option -n RTS option -no-auto-link-packages GHC option -no-global-package-db GHC option -no-hs-main GHC option -no-rtsopts-suggestions GHC option -no-user-package-db GHC option -O GHC option RTS option -o GHC option -O* GHC option -O0 GHC option -O1 GHC option -O2 GHC option -odir GHC option -Odph GHC option -ohi GHC option -opta GHC option -optc GHC option -optdll GHC option -optF GHC option -opti GHC option -optL GHC option -optl GHC option -optlc GHC option -optlo GHC option -optP GHC option | -optwindres GHC option -osuf GHC option -outputdir GHC option -P RTS option -p RTS option, [1] hp2ps command line option -pa RTS option -package GHC option, [1] -package-db GHC option ghc-pkg option -package-env GHC option -package-id GHC option -pgma GHC option -pgmc GHC option -pgmdll GHC option -pgmF GHC option -pgmi GHC option -pgmL GHC option -pgml GHC option -pgmlc GHC option -pgmlibtool GHC option -pgmlo GHC option -pgmP GHC option -pgms GHC option -pgmwindres GHC option -plugin-package GHC option -plugin-package-id GHC option -prof GHC option -qa RTS option -qb RTS option -qg RTS option -qm RTS option -qn RTS option -R RTS option -r RTS option -rdynamic GHC option -Rghc-timing GHC option -RTS -rtsopts GHC option -S GHC option RTS option -s RTS option hp2ps command line option -S RTS option -shared GHC option -sig-of GHC option -split-objs GHC option -split-sections GHC option -static GHC option -staticlib GHC option -stubdir GHC option -T RTS option -t RTS option -t<float> hp2ps command line option -this-unit-id GHC option -threaded GHC option -tmpdir GHC option -trust GHC option, [1] -U GHC option -user-package-db GHC option -V GHC option RTS option, [1] ghc-pkg option -v GHC option, [1] RTS option ghc-pkg option -W GHC option -w GHC option -Wall GHC option -Wall-missed-specialisations GHC option -Wamp GHC option -Wcompat GHC option -Wdeprecated-flags GHC option -Wdodgy-exports GHC option -Wdodgy-foreign-imports GHC option -Wdodgy-imports GHC option -Wduplicate-constraints GHC option -Wduplicate-exports GHC option -Wempty-enumerations GHC option -Werror GHC option -Whi-shadowing GHC option -Widentities GHC option -Wimplicit-prelude GHC option -Wincomplete-patterns GHC option -Wincomplete-record-updates GHC option -Wincomplete-uni-patterns GHC option -Winline-rule-shadowing GHC option -with-rtsopts GHC option -Wmissed-specialisations GHC option -Wmissing-exported-signatures GHC option -Wmissing-exported-sigs GHC option -Wmissing-fields GHC option -Wmissing-import-lists GHC option -Wmissing-local-signatures GHC option -Wmissing-local-sigs GHC option -Wmissing-methods GHC option -Wmissing-monadfail-instances GHC option -Wmissing-pattern-synonym-signatures GHC option -Wmissing-signatures GHC option -Wmonomorphism-restriction GHC option -Wname-shadowing GHC option -Wno-compat GHC option -Wnoncanonical-monad-instances GHC option -Wnoncanonical-monadfail-instances GHC option -Wnoncanonical-monoid-instances GHC option -Worphans GHC option -Woverflowed-literals GHC option -Woverlapping-patterns GHC option -Wpartial-type-signatures GHC option -Wprint-explicit-runtime-rep GHC option -Wredundant-constraints GHC option -Wsafe GHC option -Wsemigroup GHC option -Wtabs GHC option -Wtrustworthy-safe GHC option -Wtype-defaults GHC option -Wtype-errors GHC option -Wtyped-holes GHC option -Wunrecognised-pragmas GHC option -Wunrecognised-warning-flags GHC option -Wunsafe GHC option -Wunsupported-calling-conventions GHC option -Wunsupported-llvm-version GHC option -Wunticked-promoted-constructors GHC option -Wunused-binds GHC option -Wunused-do-bind GHC option -Wunused-foralls GHC option -Wunused-imports GHC option -Wunused-local-binds GHC option -Wunused-matches GHC option -Wunused-pattern-binds GHC option -Wunused-top-binds GHC option -Wunused-type-patterns GHC option -Wwarn GHC option -Wwarnings-deprecations GHC option -Wwrong-do-bind GHC option -x GHC option -XAllowAmbiguousTypes GHC option -XApplicativeDo GHC option -XArrows GHC option -XBangPatterns GHC option -XBinaryLiterals GHC option -xc RTS option, [1] -XConstrainedClassMethods GHC option -XConstraintKinds GHC option -XDataKinds GHC option -XDatatypeContexts GHC option -XDefaultSignatures GHC option -XDeriveAnyClass GHC option -XDeriveDataTypeable GHC option -XDeriveFoldable GHC option -XDeriveFunctor GHC option -XDeriveGeneric GHC option -XDeriveLift GHC option -XDeriveTraversable GHC option -XDisambiguateRecordFields GHC option -XDuplicateRecordFields GHC option -XEmptyCase GHC option -XEmptyDataDecls GHC option -XExistentialQuantification GHC option -XExplicitForAll GHC option -XExplicitNamespaces GHC option -XFlexibleContexts GHC option -XFlexibleInstances GHC option -XForeignFunctionInterface -XFunctionalDependencies GHC option -XGADTs GHC option -XGADTSyntax GHC option -XGeneralisedNewtypeDeriving GHC option -XGeneralizedNewtypeDeriving GHC option -XImplicitParams GHC option -XImpredicativeTypes GHC option -XIncoherentInstances GHC option -XInstanceSigs GHC option -XKindSignatures GHC option -XLambdaCase GHC option -XLiberalTypeSynonyms GHC option -xm RTS option, [1] -XMagicHash GHC option -XMonadComprehensions GHC option -XMonadFailDesugaring GHC option -XMonoLocalBinds GHC option -XMultiParamTypeClasses GHC option -XMultiWayIf GHC option -XNamedFieldPuns GHC option -XNamedWildCards GHC option -XNegativeLiterals GHC option -XNoImplicitPrelude GHC option -XNoMonomorphismRestriction GHC option -XNoTraditionalRecordSyntax GHC option -XNPlusKPatterns GHC option -XNullaryTypeClasses GHC option -XNumDecimals GHC option -XOverlappingInstances GHC option -XOverloadedLabels GHC option -XOverloadedLists GHC option -XOverloadedStrings GHC option -XPackageImports GHC option -XParallelListComp GHC option -XPartialTypeSignatures GHC option -XPatternGuards GHC option -XPatternSynonyms GHC option -XPolyKinds GHC option -XPostfixOperators GHC option -xq RTS option -XQuasiQuotes GHC option -XRank2Types GHC option -XRankNTypes GHC option -XRebindableSyntax GHC option -XRecordWildCards GHC option -XRecursiveDo GHC option -XRoleAnnotations GHC option -XSafe GHC option, [1] -XScopedTypeVariables GHC option -XStandaloneDeriving GHC option -XStaticPointers GHC option -XStrict GHC option -XStrictData GHC option -xt RTS option -XTemplateHaskell GHC option -XTemplateHaskellQuotes GHC option -XTransformListComp GHC option -XTrustworthy GHC option, [1] -XTupleSections GHC option -XTypeApplications GHC option -XTypeFamilies GHC option -XTypeFamilyDependencies GHC option -XTypeInType GHC option -XTypeOperators GHC option -XTypeSynonymInstances GHC option -XUnboxedTuples GHC option -XUndeciableInstances GHC option -XUndecidableInstances GHC option -XUndecidableSuperClasses GHC option -XUnicodeSyntax GHC option -XUnsafe GHC option -XViewPatterns GHC option -y hp2ps command line option -Z RTS option .ghci file .haskeline file .hc files, saving .hi files .ll files, saving .o files .s files, saving : GHCi command :! ⟨command⟩ GHCi command :? GHCi command :abandon GHCi command :add GHCi command :all-types GHCi command :back GHCi command :break GHCi command :browse GHCi command :cd GHCi command :cmd GHCi command :complete GHCi command :continue GHCi command :ctags GHCi command :def GHCi command :delete GHCi command :edit GHCi command :etags GHCi command :force GHCi command :forward GHCi command :help GHCi command :history GHCi command :info GHCi command :issafe GHCi command :kind GHCi command :list GHCi command :list [⟨module⟩] GHCi command :load GHCi command :loc-at GHCi command :main GHCi command :module GHCi command :module [*] <file> GHCi command :print GHCi command :quit GHCi command :reload GHCi command :run GHCi command :script GHCi command :set GHCi command command in GHCi :set +c GHCi command :set +m GHCi command :set +r GHCi command :set +s GHCi command :set +t GHCi command :set args GHCi command :set editor GHCi command :set prog GHCi command :set prompt GHCi command :set prompt2 GHCi command :set stop GHCi command :seti GHCi command :show GHCi command :show bindings GHCi command :show breaks GHCi command :show context GHCi command :show imports GHCi command :show language GHCi command :show modules GHCi command :show packages GHCi command :show paths GHCi command :showi language GHCi command :sprint GHCi command :step GHCi command :steplocal GHCi command :stepmodule GHCi command :trace GHCi command :type GHCi command :type-at GHCi command :undef GHCi command :unset GHCi command :uses GHCi command

## _

__GLASGOW_HASKELL__, [1] __GLASGOW_HASKELL_LLVM__ __GLASGOW_HASKELL_PATCHLEVEL1__ | __GLASGOW_HASKELL_PATCHLEVEL2__ __GLASGOW_HASKELL_TH__ __PARALLEL_HASKELL__

## A

allocation area, chunk size allocation area, size AMP ANN pragma on modules on types apparently erroneous do binding, warning Applicative do-notation Applicative-Monad Proposal | arguments command-line ASCII Assertions assertions disabling author package specification auto package specification

## B

Bang patterns binds, unused, [1], [2], [3] bound GHC option | bugs reporting

## C

C calls, function headers C code generator C pre-processor options CAFs in GHCi category package specification cc-options package specification Char size of code coverage command-line arguments order of arguments compacting garbage collection compilation phases, changing compiled code in GHCi | compiler problems compiling faster complete user-supplied kind signature concurrency Concurrent Haskell using CONLIKE consistency checks Constant Applicative Form constructor fields, strict, [1] copyright package specification cost centres automatically inserting, [1] cost-centre profiling cpp, pre-processing with CUSK Custom printing function in GHCi

## D

debugger in GHCi debugging options (for GHC) DEFAULT_TMPDIR defaulting mechanism, warning dependencies in Makefiles dependency-generation mode of GHC depends package specification DEPRECATED deprecated flags deprecations warnings description package specification deterministic builds | disabling assertions displaying type in GHCi DLL-creation mode do binding, apparently erroneous do binding, unused do-notation Applicative in GHCi dumping GHC intermediates duplicate constraints, warning duplicate exports, warning dynamic options, [1] Dynamic libraries using

## E

EDITOR, [1] encodings of source files environment file environment variable DEFAULT_TMPDIR EDITOR, [1] GHCRTS, [1], [2], [3], [4] GHC_PACKAGE_PATH, [1], [2], [3], [4], [5] HOME LD_LIBRARY_PATH, [1] PATH, [1] RPATH RUNPATH TMPDIR, [1], [2] for setting RTS options | eval mode of GHC eventlog files events export lists, duplicates exposed package specification exposed-modules package specification extended list comprehensions extensions options controlling extra-libraries package specification

## F

faster compiling faster programs, how to produce FFI GHCi support fields, missing file names of source files file suffixes for GHC filenames of modules finding interface files Floating point and the FFI floating-point exceptions. forall foralls, unused | forcing GHC-phase options foreign foreign export with GHC Foreign Function Interface GHCi support Foreign function interface formatting dumps framework-dirs package specification frameworks package specification fromInteger function fromIntegral function frontend plugins using

## G

garbage collection compacting garbage collector options GC threads, setting the number of generations, number of getArgs, behavior in GHCi getProgName, behavior in GHCi GHC backends GHC code generators GHC option --exclude-module --frontend --help --info --interactive --make --mk-dll --numeric-version --print-libdir --show-iface, [1] --show-options --supported-extensions --supported-languages --version -? -C -D <symbol>[ -E -F -H -I -L -M -O -O* -O0 -O1 -O2 -Odph -Rghc-timing -S -U -V -W -Wall -Wall-missed-specialisations -Wamp -Wcompat -Wdeprecated-flags -Wdodgy-exports -Wdodgy-foreign-imports -Wdodgy-imports -Wduplicate-constraints -Wduplicate-exports -Wempty-enumerations -Werror -Whi-shadowing -Widentities -Wimplicit-prelude -Wincomplete-patterns -Wincomplete-record-updates -Wincomplete-uni-patterns -Winline-rule-shadowing -Wmissed-specialisations -Wmissing-exported-signatures -Wmissing-exported-sigs -Wmissing-fields -Wmissing-import-lists -Wmissing-local-signatures -Wmissing-local-sigs -Wmissing-methods -Wmissing-monadfail-instances -Wmissing-pattern-synonym-signatures -Wmissing-signatures -Wmonomorphism-restriction -Wname-shadowing -Wno-compat -Wnoncanonical-monad-instances -Wnoncanonical-monadfail-instances -Wnoncanonical-monoid-instances -Worphans -Woverflowed-literals -Woverlapping-patterns -Wpartial-type-signatures -Wprint-explicit-runtime-rep -Wredundant-constraints -Wsafe -Wsemigroup -Wtabs -Wtrustworthy-safe -Wtype-defaults -Wtype-errors -Wtyped-holes -Wunrecognised-pragmas -Wunrecognised-warning-flags -Wunsafe -Wunsupported-calling-conventions -Wunsupported-llvm-version -Wunticked-promoted-constructors -Wunused-binds -Wunused-do-bind -Wunused-foralls -Wunused-imports -Wunused-local-binds -Wunused-matches -Wunused-pattern-binds -Wunused-top-binds -Wunused-type-patterns -Wwarn -Wwarnings-deprecations -Wwrong-do-bind -XAllowAmbiguousTypes -XApplicativeDo -XArrows -XBangPatterns -XBinaryLiterals -XConstrainedClassMethods -XConstraintKinds -XDataKinds -XDatatypeContexts -XDefaultSignatures -XDeriveAnyClass -XDeriveDataTypeable -XDeriveFoldable -XDeriveFunctor -XDeriveGeneric -XDeriveLift -XDeriveTraversable -XDisambiguateRecordFields -XDuplicateRecordFields -XEmptyCase -XEmptyDataDecls -XExistentialQuantification -XExplicitForAll -XExplicitNamespaces -XFlexibleContexts -XFlexibleInstances -XFunctionalDependencies -XGADTSyntax -XGADTs -XGeneralisedNewtypeDeriving -XGeneralizedNewtypeDeriving -XImplicitParams -XImpredicativeTypes -XIncoherentInstances -XInstanceSigs -XKindSignatures -XLambdaCase -XLiberalTypeSynonyms -XMagicHash -XMonadComprehensions -XMonadFailDesugaring -XMonoLocalBinds -XMultiParamTypeClasses -XMultiWayIf -XNPlusKPatterns -XNamedFieldPuns -XNamedWildCards -XNegativeLiterals -XNoImplicitPrelude -XNoMonomorphismRestriction -XNoTraditionalRecordSyntax -XNullaryTypeClasses -XNumDecimals -XOverlappingInstances -XOverloadedLabels -XOverloadedLists -XOverloadedStrings -XPackageImports -XParallelListComp -XPartialTypeSignatures -XPatternGuards -XPatternSynonyms -XPolyKinds -XPostfixOperators -XQuasiQuotes -XRank2Types -XRankNTypes -XRebindableSyntax -XRecordWildCards -XRecursiveDo -XRoleAnnotations -XSafe, [1] -XScopedTypeVariables -XStandaloneDeriving -XStaticPointers -XStrict -XStrictData -XTemplateHaskell -XTemplateHaskellQuotes -XTransformListComp -XTrustworthy, [1] -XTupleSections -XTypeApplications -XTypeFamilies -XTypeFamilyDependencies -XTypeInType -XTypeOperators -XTypeSynonymInstances -XUnboxedTuples -XUndeciableInstances -XUndecidableInstances -XUndecidableSuperClasses -XUnicodeSyntax -XUnsafe -XViewPatterns -c, [1] -clear-package-db -cpp -dcmm-lint -dcore-lint -ddump-asm -ddump-bcos -ddump-cmm -ddump-core-stats -ddump-cse -ddump-deriv -ddump-ds -ddump-foreign -ddump-hi -ddump-hi-diffs -ddump-if-trace -ddump-inlinings -ddump-llvm -ddump-minimal-imports -ddump-mod-cycles -ddump-occur-anal -ddump-opt-cmm -ddump-parsed -ddump-prep -ddump-rn -ddump-rn-stats -ddump-rn-trace -ddump-rule-firings -ddump-rule-rewrites -ddump-rules -ddump-simpl -ddump-simpl-iterations -ddump-simpl-stats -ddump-spec -ddump-splices -ddump-stg -ddump-str-signatures -ddump-stranal -ddump-tc -ddump-tc-trace -ddump-to-file -ddump-types -ddump-vect -ddump-vt-trace -ddump-worker-wrapper -debug -dep-makefile -dep-suffix -dfaststring-stats -dinitial-unique -distrust, [1] -distrust-all -distrust-all-packages -dno-debug-output -dppr-case-as-let -dppr-cols -dppr-debug -dppr-user-length -dshow-passes -dstg-lint -dsuppress-all -dsuppress-coercions -dsuppress-idinfo -dsuppress-module-prefixes -dsuppress-type-applications -dsuppress-type-signatures -dsuppress-unfoldings -dsuppress-uniques -dth-dec-file -dumpdir -dunique-increment -dverbose-core2core -dverbose-stg2stg -dylib-install-name -dynamic -dynamic-too -dynload -e -eventlog -fPIC -fasm -fbreak-on-error -fbreak-on-exception -fbyte-code -fcall-arity -fcase-merge -fcmm-elim-common-blocks -fcmm-sink -fcpr-off -fcross-module-specialise -fcse -fdefer-out-of-scope-variables -fdefer-type-errors -fdefer-typed-holes -fdicts-cheap -fdicts-strict -fdmd-tx-dict-sel -fdo-eta-reduction -fdo-lambda-eta-expansion -feager-blackholing, [1] -fenable-rewrite-rules -ferror-spans -fexcess-precision -fexpose-all-unfoldings -fexternal-interpreter -ffloat-in -fforce-recomp -ffull-laziness -ffun-to-thunk -fghci-hist-size -fglasgow-exts -fhelpful-errors -fhpc -fignore-asserts -fignore-interface-pragmas -flate-dmd-anal -fliberate-case -fliberate-case-threshold -fllvm -floopification -fmax-inline-alloc-size -fmax-inline-memcpy-insn -fmax-inline-memset-insns -fmax-pmcheck-iterations -fmax-relevant-binds -fmax-simplifier-iterations -fmax-worker-args -fno-code -fno-embed-manifest -fno-gen-manifest -fno-max-relevant-bindings -fno-opt-coercion -fno-pre-inlining -fno-prof-auto -fno-prof-cafs -fno-prof-count-entries -fno-shared-implib -fno-state-hack -fobject-code -fomit-interface-pragmas -fomit-yields -foptimal-applicative-do -fpackage-trust -fpedantic-bottoms -fplugin -fplugin-opt -fprint-bind-result -fprint-equality-relations -fprint-expanded-synonyms -fprint-explicit-coercions -fprint-explicit-foralls -fprint-explicit-kinds -fprint-explicit-runtime-reps -fprint-potential-instances -fprint-typechecker-elaboration -fprint-unicode-syntax -fprof-auto -fprof-auto-calls -fprof-auto-exported -fprof-auto-top -fprof-cafs -framework -framework-path -fregs-graph -fregs-iterative -fshow-warning-groups -fsimpl-tick-factor -fsimplifier-phases -fspec-constr -fspec-constr-count -fspec-constr-threshold -fspecialise -fstatic-argument-transformation -fstrictness -fstrictness-before -funbox-small-strict-fields -funbox-strict-fields -funfolding-creation-threshold -funfolding-dict-discount -funfolding-fun-discount -funfolding-keeness-factor -funfolding-use-threshold -fvectorisation-avoidance -fvectorise -fwrite-interface -ghci-script -global-package-db -hcsuf -hide-all-packages -hide-all-plugin-packages -hide-package -hidir -hisuf -i -ignore-dot-ghci -ignore-package -include-pkg-deps -interactive-print -i⟨dir⟩[:⟨dir⟩]* -j -keep-hc-file -keep-hc-files -keep-llvm-file -keep-llvm-files -keep-s-file -keep-s-files -keep-tmp-files -l -library-name -main-is -msse2 -no-auto-link-packages -no-global-package-db -no-hs-main -no-rtsopts-suggestions -no-user-package-db -o -odir -ohi -optF -optL -optP -opta -optc -optdll -opti -optl -optlc -optlo -optwindres -osuf -outputdir -package, [1] -package-db -package-env -package-id -pgmF -pgmL -pgmP -pgma -pgmc -pgmdll -pgmi -pgml -pgmlc -pgmlibtool -pgmlo -pgms -pgmwindres -plugin-package -plugin-package-id -prof -rdynamic -rtsopts -shared -sig-of -split-objs -split-sections -static -staticlib -stubdir -this-unit-id -threaded -tmpdir -trust, [1] -user-package-db -v -w -with-rtsopts -x Issue, [1], [2] Should When bound inference. requiring resets to unsafe. using | GHC vs the Haskell standards GHC, using GHC_PACKAGE_PATH, [1], [2], [3], [4] GHCi, [1] GHCi command : :! ⟨command⟩ :? :abandon :add :all-types :back :break :browse :cd :cmd :complete :continue :ctags :def :delete :edit :etags :force :forward :help :history :info :issafe :kind :list :list [⟨module⟩] :load :loc-at :main :module :module [*] <file> :print :quit :reload :run :script :set :set +c :set +m :set +r :set +s :set +t :set args :set editor :set prog :set prompt :set prompt2 :set stop :seti :show :show bindings :show breaks :show context :show imports :show language :show modules :show packages :show paths :showi language :sprint :step :steplocal :stepmodule :trace :type :type-at :undef :unset :uses import GHCi prompt setting GHCRTS, [1], [2], [3] GHCRTS environment variable Glasgow Haskell mailing lists group

## H

haddock-html package specification haddock-interfaces package specification Happy happy parser generator Haskell Program Coverage Haskell standards vs GHC heap profiles heap size, factor heap size, maximum heap size, suggested heap space, using less heap, minimum free help options hidden-modules package specification HOME homepage package specification hooks RTS | hp2ps hp2ps command line option -? -b -c -d -e<float>[in|mm|pt] -g -l -m<int> -p -s -t<float> -y hpc hs-libraries package specification hs_exit hs_init hsc2hs Hugs hugs-options package specification

## I

id package specification idle GC implicit parameters implicit prelude, warning import GHCi command import lists, missing import-dirs package specification imports, unused improvement, code in GHCi Repeating last command include-dirs package specification includes package specification INCOHERENT incomplete patterns, warning | incomplete record updates, warning inference. GHC option INLINE inlining, controlling, [1], [2], [3], [4] Int size of interactive interactive mode interface files interface files, finding them interface files, options interfacing with native code intermediate files, saving intermediate passes, output interpreter invoking GHCi Issue GHC option, [1], [2] it variable

## K

kind heterogeneous Type equality constraints

## L

LANGUAGE pragma language option language, GHC extensions Latin-1 ld options ld-options package specification LD_LIBRARY_PATH, [1] lhs file extension libdir libraries with GHCi | library-dirs package specification license-file package specification LINE pragma linker options linking Haskell libraries with foreign code lint list comprehensions ambiguity with quasi-quotes generalised parallel LLVM code generator

## M

machine-specific options mailing lists, Glasgow Haskell maintainer package specification make building programs with make and recompilation make mode of GHC Makefile dependencies Makefiles avoiding MallocFailHook matches, unused mdo memory, using less heap | methods, missing MFP MIN_VERSION_GLASGOW_HASKELL MINIMAL missing fields, warning missing import lists, warning missing methods, warning mode options module system, recursion modules and filenames monad comprehensions MonadFail Proposal monomorphism restriction, warning multiline input in GHCi

## N

name package specification native code generator NOINLINE | nominal role NOTINLINE NOUNPACK

## O

object files old generation, size optimisation optimise DPH aggressively normally optimization and GHCi options GHCi for profiling language | OPTIONS_GHC orphan instances, warning orphan rules, warning OutOfHeapHook output-directing options OVERLAPPABLE OVERLAPPING overlapping patterns, warning OVERLAPS overloading, death to, [1], [2]

## P

package environments package trust package-url package specification packages building management using with GHCi parallel list comprehensions parallelism, [1] parser generator for Haskell PATH, [1] patterns, incomplete patterns, overlapping phantom role platform-specific options postscript, from heap profiles pragma ANN INCOHERENT LANGUAGE LINE MINIMAL OVERLAPPABLE OVERLAPPING OVERLAPS RULES SOURCE ``INLINE`` ``OPTIONS_GHC`` | pragma, SPECIALIZE pre-processing: cpp pre-processing: custom pre-processor options problems problems running your program problems with the compiler proc profiling options ticky ticky with Template Haskell promoted constructor, warning prompt GHCi

## Q

quasi-quotation Quasi-quotes | quasi-quotes ambiguity with list comprehensions

## R

recompilation checker, [1] record updates, incomplete recursion, between modules redirecting compilation output redundant constraints, warning reexported-modules reexport specification Repeating last command in GHCi reporting bugs representation polymorphism representational role requiring GHC option resets GHC option rewrite rules roles RPATH RTS RTS behaviour, changing RTS hooks RTS option --info --install-signal-handlers --machine-readable -A -B -C, [1] -D -F -G -H -I -K -L, [1] -M -N -O -P -R -S -T -V, [1] -Z -c -h -hT -hb -hc -hd -hm -hr -hy -i -kb -kc -ki -l -m -maxN -n -p -pa -qa -qb -qg -qm -qn -r -s -t -v -xc, [1] -xm -xq -xt | RTS options concurrent from the environment garbage collection RTS options, hacking/debugging RTS options, setting RULES pragma runghc running, compiled program RUNPATH runtime control of Haskell programs

## S

safe compilation safe haskell Safe Haskell flags safe haskell trust safe haskell uses safe imports safe inference safe language sanity-checking options search path source code secure haskell semigroup warning separate compilation, [1] shadowing interface files shadowing, warning Shared libraries using shell commands in GHCi Should GHC option Show class simple: stack trace in GHCi single : -osuf using with profiling smaller programs, how to produce | SMP, [1] SOURCE source annotations source-file options space-leaks, avoiding SPECIALIZE pragma, [1], [2] specifying your own main function SQL stability package specification stack chunk buffer size chunk size stack, initial size stack, maximum size StackOverflowHook startup files, GHCi, [1] statements in GHCi static options, [1] Static pointers strict constructor fields, [1] strict haskell string gaps vs -cpp. structure, command-line suffixes, file suppression of unwanted dump output

## T

tabs, warning Template Haskell temporary files keeping redirecting ticky ticky profiling ticky-ticky profiling time profile TMPDIR, [1], [2] TMPDIR environment variable to GHC option tracing | trust trust check, [1] trusted package specification trustworthy TYPE Type defaulting in GHCi Type equality constraints kind heterogeneous type patterns, unused type signatures, missing, [1], [2], [3], [4] type signatures, missing, pattern synonyms

## U

unfolding, controlling, [1], [2], [3], [4] Unicode UNPACK unregisterised compilation unsafe. GHC option unused binds, warning, [1], [2], [3] unused do binding, warning | unused foralls, warning unused imports, warning unused matches, warning unused type patterns, warning using GHC option using GHC UTF-8 utilities, Haskell

## V

verbosity options version package specification | version, of ghc

## W

WARNING warnings deprecations | When GHC option windres

## Y

Yacc for Haskell