summaryrefslogtreecommitdiff
path: root/docs
Commit message (Collapse)AuthorAgeFilesLines
* Document the extra instances divergence from H98/H2010Ian Lynagh2012-01-141-0/+16
| | | | Now that they've moved from Control.Monad.Instances
* Document the Bits superclass divergence from Haskell 2010Ian Lynagh2012-01-141-0/+43
|
* Document the Num superclass divergence from H98/H2010Ian Lynagh2012-01-141-0/+33
|
* Fix mistake in flags.xmlDavid Terei2012-01-121-1/+1
|
* Consistent: Enbaled -> enabled in flag doc.David Terei2012-01-121-2/+2
|
* Add '-freg-liveness' flag to control if STG liveness informationDavid Terei2012-01-121-0/+17
| | | | is used for optimisation. (enabled by default)
* Formatting fixes to flags.xmlDavid Terei2012-01-121-2801/+2801
|
* Add '-fllvm-tbaa' flag for controlling LLVM TBAA opt.David Terei2012-01-121-0/+9
|
* Implememt -fdefer-type-errors (Trac #5624)Simon Peyton Jones2012-01-122-9/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch implements the idea of deferring (most) type errors to runtime, instead emitting only a warning at compile time. The basic idea is very simple: * The on-the-fly unifier in TcUnify never fails; instead if it gets stuck it emits a constraint. * The constraint solver tries to solve the constraints (and is entirely unchanged, hooray). * The remaining, unsolved constraints (if any) are passed to TcErrors.reportUnsolved. With -fdefer-type-errors, instead of emitting an error message, TcErrors emits a warning, AND emits a binding for the constraint witness, binding it to (error "the error message"), via the new form of evidence TcEvidence.EvDelayedError. So, when the program is run, when (and only when) that witness is needed, the program will crash with the exact same error message that would have been given at compile time. Simple really. But, needless to say, the exercise forced me into some major refactoring. * TcErrors is almost entirely rewritten * EvVarX and WantedEvVar have gone away entirely * ErrUtils is changed a bit: * New Severity field in ErrMsg * Renamed the type Message to MsgDoc (this change touches a lot of files trivially) * One minor change is that in the constraint solver we try NOT to combine insoluble constraints, like Int~Bool, else all such type errors get combined together and result in only one error message! * I moved some definitions from TcSMonad to TcRnTypes, where they seem to belong more
* Doc fixIan Lynagh2012-01-071-1/+1
|
* Refer to Control.Concurrent instead of GHC.ConcSimon Marlow2012-01-031-5/+5
| | | | Modified version of a patch by shelarcy <shelarcy@gmail.com>
* Documentation wibble: kind -> sortSimon Peyton Jones2011-12-281-1/+2
|
* Implemnt Trac #5712: show method for infix GADT constructorsSimon Peyton Jones2011-12-231-0/+14
| | | | | This is a tiny feature improvement; see the ticket. I have updated the user manual too.
* Fix users_guide markupIan Lynagh2011-12-131-2/+2
|
* Allow type signatures in instance decls (Trac #5676)Simon Peyton Jones2011-12-121-0/+33
| | | | | | | | | | | This new feature-ette, enable with -XInstanceSigs, lets you give a type signature in an instance declaration: instance Eq Int where (==) :: Int -> Int -> Bool (==) = ...blah... Scoped type variables work too.
* Allow the number of capabilities to be increased at runtime (#3729)Simon Marlow2011-12-061-3/+11
| | | | | At present the number of capabilities can only be *increased*, not decreased. The latter presents a few more challenges!
* More changes aimed at improving call stacks.Simon Marlow2011-12-023-2/+27
| | | | | | | | | | | | | | | | | | | | | | | | - Attach a SrcSpan to every CostCentre. This had the side effect that CostCentres that used to be merged because they had the same name are now considered distinct; so I had to add a Unique to CostCentre to give them distinct object-code symbols. - New flag: -fprof-auto-calls. This flag adds an automatic SCC to every call site (application, to be precise). This is typically more useful for call stacks than annotating whole functions. Various tidy-ups at the same time: removed unused NoCostCentre constructor, and refactored a bit in Coverage.lhs. The call stack we get from traceStack now looks like this: Stack trace: Main.CAF (<entire-module>) Main.main.xs (callstack002.hs:18:12-24) Main.map (callstack002.hs:13:12-16) Main.map.go (callstack002.hs:15:21-34) Main.map.go (callstack002.hs:15:21-23) Main.f (callstack002.hs:10:7-43)
* doc update: -prof now works with +RTS -N (with caveats)Simon Marlow2011-11-291-6/+38
|
* Allow the quotes to be omitted in {-# SCC "<varid>" #-}Simon Marlow2011-11-281-5/+10
|
* Fix document to follow renaming -XPArr to -XParallelArraysshelarcy2011-11-271-2/+2
|
* Don't list sortBy as a good consumer; fixes trac #5473Ian Lynagh2011-11-261-6/+0
|
* Initial documentation for -XPolyKinds in the user's guide.Jose Pedro Magalhaes2011-11-252-8/+242
|
* Merge ../bghcDaniel Fischer2011-11-241-41/+41
|\
| * Fix a few typosDaniel Fischer2011-11-241-9/+9
| |
| * Whitespace only in glasgow_exts.xmlDaniel Fischer2011-11-241-32/+32
| |
* | Fix markup (non-validate-breaking)Simon Marlow2011-11-241-4/+4
|/
* Fix userguide markupIan Lynagh2011-11-241-1/+1
|
* Support "phase control" for SPECIALISE pragmasSimon Peyton Jones2011-11-241-0/+40
| | | | | | | | | | | | | This featurelet allows Trac #5237 to be fixed. The idea is to allow SPECIALISE pragmas to specify the phases in which the RULE is active, just as you can do with RULES themselves. {-# SPECIALISE [1] foo :: Int -> Int #-} This feature is so obvious that not having it is really a bug. There are, needless to say, a few wrinkles. See Note [Activation pragmas for SPECIALISE] in DsBinds
* Tweaks to safe haskell documentation.David Terei2011-11-221-64/+105
|
* Update Safe Haskell documentation for new design in 7.4David Terei2011-11-214-100/+273
|
* Add doc for -msse4.2 flag.David Terei2011-11-211-1/+20
|
* Improve documentation on backendsDavid Terei2011-11-219-111/+161
|
* Improve code generator documentation.David Terei2011-11-216-3/+75
|
* Improve the way we call "rm" in the build system; fixes trac #4916Ian Lynagh2011-11-191-1/+1
| | | | | | | | | | We avoid calling "rm -rf" with no file arguments; this fixes cleaning on Solaris, where that fails. We also check for suspicious arguments: anything containing "..", starting "/", or containing a "*" (you need to call $(wildcard ...) yourself now if you really want globbing). This should make things a little safer.
* Add -dumpdir flag; fixes trac #5198Ian Lynagh2011-11-182-2/+21
| | | | | | -ddump-* files are put in the given directory. -outputdir also sets the dumpdir.
* Removing the default grouping clause from the SQL-like comprehension notation ;George Giorgidze2011-11-171-46/+4
|
* Remove executable mode from some filesDavid Terei2011-11-161-0/+0
|
* Fix mistake in user guideDavid Terei2011-11-161-2/+2
|
* Doc changes following changes to the way -rtsopts worksSimon Marlow2011-11-163-64/+111
| | | | | | Mainly, -rtsopts doesn't work with -no-hs-main, and you have to do something in your main() to get the effect of -rtsopts (and -with-rtsopts).
* Add -fpedantic-bottoms, and document itSimon Peyton Jones2011-11-162-0/+23
| | | | | | I did a bit of refactoring (of course) at the same time. See the discussion in Trac #5587. Most of the real change is in CoreArity.
* Formatting fixSimon Peyton Jones2011-11-161-1/+1
|
* Improve documentation of SPECIALISE pragmaSimon Peyton Jones2011-11-151-3/+12
|
* added NOUNPACK pragma (see #2338)Stefan Wehr2011-11-092-1/+26
|
* update docs regarding .a files and GHCi (#3345)Simon Marlow2011-11-081-31/+25
|
* fix markupSimon Marlow2011-11-081-1/+1
|
* Improve user's guide doc for associated type defaultsJose Pedro Magalhaes2011-11-071-5/+20
| | | | | Make it a separate section to help it stand out, and add an example containing multiple defaults for a single type.
* fix #5602: (<+>) example in User's GuideRoss Paterson2011-11-041-2/+2
|
* Fix buildIan Lynagh2011-11-041-1/+1
| | | | | | | | With <imagedata fileref="prof_scc.png" I get users_guide.tex:12802: Cannot determine size of graphic in /home/ian/ghc/git/ghc/docs/users_guide//prof_scc.png (no BoundingBox). users_guide.tex:12802: leading text: ...width=645pt,height=428pt]{prof_scc.png}
* Overhaul of infrastructure for profiling, coverage (HPC) and breakpointsSimon Marlow2011-11-023-275/+388
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | User visible changes ==================== Profilng -------- Flags renamed (the old ones are still accepted for now): OLD NEW --------- ------------ -auto-all -fprof-auto -auto -fprof-exported -caf-all -fprof-cafs New flags: -fprof-auto Annotates all bindings (not just top-level ones) with SCCs -fprof-top Annotates just top-level bindings with SCCs -fprof-exported Annotates just exported bindings with SCCs -fprof-no-count-entries Do not maintain entry counts when profiling (can make profiled code go faster; useful with heap profiling where entry counts are not used) Cost-centre stacks have a new semantics, which should in most cases result in more useful and intuitive profiles. If you find this not to be the case, please let me know. This is the area where I have been experimenting most, and the current solution is probably not the final version, however it does address all the outstanding bugs and seems to be better than GHC 7.2. Stack traces ------------ +RTS -xc now gives more information. If the exception originates from a CAF (as is common, because GHC tends to lift exceptions out to the top-level), then the RTS walks up the stack and reports the stack in the enclosing update frame(s). Result: +RTS -xc is much more useful now - but you still have to compile for profiling to get it. I've played around a little with adding 'head []' to GHC itself, and +RTS -xc does pinpoint the problem quite accurately. I plan to add more facilities for stack tracing (e.g. in GHCi) in the future. Coverage (HPC) -------------- * derived instances are now coloured yellow if they weren't used * likewise record field names * entry counts are more accurate (hpc --fun-entry-count) * tab width is now correct (markup was previously off in source with tabs) Internal changes ================ In Core, the Note constructor has been replaced by Tick (Tickish b) (Expr b) which is used to represent all the kinds of source annotation we support: profiling SCCs, HPC ticks, and GHCi breakpoints. Depending on the properties of the Tickish, different transformations apply to Tick. See CoreUtils.mkTick for details. Tickets ======= This commit closes the following tickets, test cases to follow: - Close #2552: not a bug, but the behaviour is now more intuitive (test is T2552) - Close #680 (test is T680) - Close #1531 (test is result001) - Close #949 (test is T949) - Close #2466: test case has bitrotted (doesn't compile against current version of vector-space package)
* fix doc bugsSimon Marlow2011-11-022-14/+19
| | | | | The description of GHC's divergence from the FFI spec was in the wrong place, and the xref was broken.