[[project @ 2004-08-08 17:26:26 by krasimir] krasimir**20040808172647 xmlize sgml docbooks ] { hunk ./ghc/docs/users_guide/6.0-notes.sgml 10 - linkend="template-haskell">. + linkend="template-haskell"/>. hunk ./ghc/docs/users_guide/6.0-notes.sgml 18 - now supported. See . + now supported. See . hunk ./ghc/docs/users_guide/6.0-notes.sgml 27 - linkend="rts-options-heap-prof">. + linkend="rts-options-heap-prof"/>. hunk ./ghc/docs/users_guide/6.0-notes.sgml 58 - linkend="using-packages">), but if you stick to GHCi and + linkend="using-packages"/>), but if you stick to GHCi and hunk ./ghc/docs/users_guide/bugs.sgml 1 - + hunk ./ghc/docs/users_guide/bugs.sgml 13 - go wrong” section () for information + go wrong” section () for information hunk ./ghc/docs/users_guide/bugs.sgml 70 - it's a difference between GHC & Haskell 98. + it's a difference between GHC & Haskell 98. hunk ./ghc/docs/users_guide/bugs.sgml 259 - patterns (see ), and usually + patterns (see ), and usually hunk ./ghc/docs/users_guide/debugging.sgml 8 - + hunk ./ghc/docs/users_guide/debugging.sgml 249 - + hunk ./ghc/docs/users_guide/debugging.sgml 251 - + hunk ./ghc/docs/users_guide/debugging.sgml 387 - + hunk ./ghc/docs/users_guide/debugging.sgml 389 - + hunk ./ghc/docs/users_guide/debugging.sgml 406 - + hunk ./ghc/docs/users_guide/debugging.sgml 476 - + hunk ./ghc/docs/users_guide/debugging.sgml 515 - + hunk ./ghc/docs/users_guide/faq.sgml 98 - linkend="cpp-string-gaps">. + linkend="cpp-string-gaps"/>. hunk ./ghc/docs/users_guide/faq.sgml 193 - linkend="options-C-compiler">). + linkend="options-C-compiler"/>). hunk ./ghc/docs/users_guide/faq.sgml 255 -raised. See for more +raised. See for more hunk ./ghc/docs/users_guide/faq.sgml 264 - See . + See . hunk ./ghc/docs/users_guide/faq.sgml 373 - input <- hGetLine + input &- hGetLine hunk ./ghc/docs/users_guide/faq.sgml 429 - linkend="finding-header-files"> for more details. + linkend="finding-header-files"/> for more details. hunk ./ghc/docs/users_guide/faq.sgml 445 - See for more details on + See for more details on hunk ./ghc/docs/users_guide/ffi-chap.sgml 3 - -Foreign function interface (FFI) + +Foreign function interface (FFI) hunk ./ghc/docs/users_guide/ffi-chap.sgml 7 - Addendum 1.0, whose definition is available from http://haskell.org/. + Addendum 1.0, whose definition is available from http://haskell.org/. hunk ./ghc/docs/users_guide/ffi-chap.sgml 21 - linkend="sec-ffi-ghcexts">, but please note that programs using + linkend="sec-ffi-ghcexts"/>, but please note that programs using hunk ./ghc/docs/users_guide/ffi-chap.sgml 59 - Using <literal>foreign export</literal> and <literal>foreign - import ccall "wrapper"</literal> with GHC + Using <literal>foreign export</literal> and <literal>foreign import ccall "wrapper"</literal> with GHC hunk ./ghc/docs/users_guide/ffi-chap.sgml 66 - which uses foreign export or foreign - import "wrapper", it generates two + which uses foreign export or + foreign import "wrapper", it generates two hunk ./ghc/docs/users_guide/ffi-chap.sgml 138 - for (i = 0; i < 5; i++) { + for (i = 0; i < 5; i++) { hunk ./ghc/docs/users_guide/ffi-chap.sgml 206 - Using <literal>foreign import ccall "wrapper"</literal> with - GHC + Using <literal>foreign import ccall "wrapper"</literal> with GHC hunk ./ghc/docs/users_guide/ffi-chap.sgml 233 - () to provide + () to provide hunk ./ghc/docs/users_guide/ffi-chap.sgml 270 -See the c_includes field in . +See the c_includes field in . hunk ./ghc/docs/users_guide/ffi-chap.sgml 299 - linkend="c-pre-processor">). + linkend="c-pre-processor"/>). hunk ./ghc/docs/users_guide/ffi-chap.sgml 392 - + hunk ./ghc/docs/users_guide/flags.sgml 6 - ), and the flag's opposite + ), and the flag's opposite hunk ./ghc/docs/users_guide/flags.sgml 10 - Help and verbosity options (<xref linkend="options-help">) + Help and verbosity options (<xref linkend="options-help"/>) hunk ./ghc/docs/users_guide/flags.sgml 13 - + hunk ./ghc/docs/users_guide/flags.sgml 77 - Which phases to run (<xref linkend="options-order">) + Which phases to run (<xref linkend="options-order"/>) hunk ./ghc/docs/users_guide/flags.sgml 80 - + hunk ./ghc/docs/users_guide/flags.sgml 120 - Redirecting output (<xref linkend="options-output">) + Redirecting output (<xref linkend="options-output"/>) hunk ./ghc/docs/users_guide/flags.sgml 123 - + hunk ./ghc/docs/users_guide/flags.sgml 181 - Keeping intermediate files (<xref linkend="keeping-intermediates">) + Keeping intermediate files (<xref linkend="keeping-intermediates"/>) hunk ./ghc/docs/users_guide/flags.sgml 184 - + hunk ./ghc/docs/users_guide/flags.sgml 224 - Temporary files (<xref linkend="temp-files">) + Temporary files (<xref linkend="temp-files"/>) hunk ./ghc/docs/users_guide/flags.sgml 227 - + hunk ./ghc/docs/users_guide/flags.sgml 249 - Finding imports (<xref linkend="search-path">) + Finding imports (<xref linkend="search-path"/>) hunk ./ghc/docs/users_guide/flags.sgml 252 - + hunk ./ghc/docs/users_guide/flags.sgml 282 - Interface file options (<xref linkend="hi-options">) + Interface file options (<xref linkend="hi-options"/>) hunk ./ghc/docs/users_guide/flags.sgml 285 - + hunk ./ghc/docs/users_guide/flags.sgml 328 - Recompilation checking (<xref linkend="recomp">) + Recompilation checking (<xref linkend="recomp"/>) hunk ./ghc/docs/users_guide/flags.sgml 331 - + hunk ./ghc/docs/users_guide/flags.sgml 354 - Interactive-mode options (<xref linkend="ghci-dot-files">) + Interactive-mode options (<xref linkend="ghci-dot-files"/>) hunk ./ghc/docs/users_guide/flags.sgml 357 - + hunk ./ghc/docs/users_guide/flags.sgml 385 - Packages (<xref linkend="packages">) + Packages (<xref linkend="packages"/>) hunk ./ghc/docs/users_guide/flags.sgml 387 - + hunk ./ghc/docs/users_guide/flags.sgml 421 - Language options (<xref linkend="options-language">) + Language options (<xref linkend="options-language"/>) hunk ./ghc/docs/users_guide/flags.sgml 424 - + hunk ./ghc/docs/users_guide/flags.sgml 519 - Warnings (<xref linkend="options-sanity">) + Warnings (<xref linkend="options-sanity"/>) hunk ./ghc/docs/users_guide/flags.sgml 522 - + hunk ./ghc/docs/users_guide/flags.sgml 559 - warn about uses of functions & types that are deprecated + warn about uses of functions & types that are deprecated hunk ./ghc/docs/users_guide/flags.sgml 669 - Optimisation levels (<xref linkend="options-optimise">) + Optimisation levels (<xref linkend="options-optimise"/>) hunk ./ghc/docs/users_guide/flags.sgml 672 - + hunk ./ghc/docs/users_guide/flags.sgml 700 - Individual optimisations (<xref linkend="options-f">) + Individual optimisations (<xref linkend="options-f"/>) hunk ./ghc/docs/users_guide/flags.sgml 703 - + hunk ./ghc/docs/users_guide/flags.sgml 896 - Profiling options (<xref linkend="profiling">) + Profiling options (<xref linkend="profiling"/>) hunk ./ghc/docs/users_guide/flags.sgml 899 - + hunk ./ghc/docs/users_guide/flags.sgml 953 - Parallelism options (<xref linkend="sec-using-parallel">) + Parallelism options (<xref linkend="sec-using-parallel"/>) hunk ./ghc/docs/users_guide/flags.sgml 956 - + hunk ./ghc/docs/users_guide/flags.sgml 990 - C pre-processor options (<xref linkend="c-pre-processor">) + C pre-processor options (<xref linkend="c-pre-processor"/>) hunk ./ghc/docs/users_guide/flags.sgml 993 - + hunk ./ghc/docs/users_guide/flags.sgml 1034 - C compiler options (<xref linkend="options-C-compiler">) + C compiler options (<xref linkend="options-C-compiler"/>) hunk ./ghc/docs/users_guide/flags.sgml 1036 - + hunk ./ghc/docs/users_guide/flags.sgml 1059 - Code generation options (<xref linkend="options-codegen">) + Code generation options (<xref linkend="options-codegen"/>) hunk ./ghc/docs/users_guide/flags.sgml 1062 - + hunk ./ghc/docs/users_guide/flags.sgml 1096 - Linking options (<xref linkend="options-linker">) + Linking options (<xref linkend="options-linker"/>) hunk ./ghc/docs/users_guide/flags.sgml 1099 - + hunk ./ghc/docs/users_guide/flags.sgml 1197 - Replacing phases (<xref linkend="replacing-phases">) + Replacing phases (<xref linkend="replacing-phases"/>) hunk ./ghc/docs/users_guide/flags.sgml 1200 - + hunk ./ghc/docs/users_guide/flags.sgml 1274 - Forcing options to particular phases (<xref linkend="forcing-options-through">) + Forcing options to particular phases (<xref linkend="forcing-options-through"/>) hunk ./ghc/docs/users_guide/flags.sgml 1277 - + hunk ./ghc/docs/users_guide/flags.sgml 1343 - Platform-specific options (<xref linkend="options-platform">) + Platform-specific options (<xref linkend="options-platform"/>) hunk ./ghc/docs/users_guide/flags.sgml 1346 - + hunk ./ghc/docs/users_guide/flags.sgml 1375 - External core file options (<xref linkend="ext-core">) + External core file options (<xref linkend="ext-core"/>) hunk ./ghc/docs/users_guide/flags.sgml 1378 - + hunk ./ghc/docs/users_guide/flags.sgml 1401 - Compiler debugging options (<xref linkend="options-debugging">) + Compiler debugging options (<xref linkend="options-debugging"/>) hunk ./ghc/docs/users_guide/flags.sgml 1404 - + hunk ./ghc/docs/users_guide/flags.sgml 1663 - + hunk ./ghc/docs/users_guide/ghci.sgml 149 - linkend="ghci-scope">). So we can now type expressions involving + linkend="ghci-scope"/>). So we can now type expressions involving hunk ./ghc/docs/users_guide/ghci.sgml 194 - linkend="ghci-cmd-line-options">)Note that in + linkend="ghci-cmd-line-options"/>)Note that in hunk ./ghc/docs/users_guide/ghci.sgml 200 - linkend="search-path">. + linkend="search-path"/>. hunk ./ghc/docs/users_guide/ghci.sgml 223 - compilation setting (see ). + compilation setting (see ). hunk ./ghc/docs/users_guide/ghci.sgml 250 - and A imports both B & C: + and A imports both B & C: hunk ./ghc/docs/users_guide/ghci.sgml 525 -Prelude> x <- return 42 +Prelude> x <- return 42 hunk ./ghc/docs/users_guide/ghci.sgml 530 - The statement x <- return 42 means + The statement x <- return 42 means hunk ./ghc/docs/users_guide/ghci.sgml 546 - is that the monadic bind (p <- e) is + is that the monadic bind (p <- e) is hunk ./ghc/docs/users_guide/ghci.sgml 632 - it <- e + it <- e hunk ./ghc/docs/users_guide/ghci.sgml 681 - GHCi prompt (see ). For example, to + GHCi prompt (see ). For example, to hunk ./ghc/docs/users_guide/ghci.sgml 690 - linkend="using-ghc">) also make sense in interactive mode. The ones + linkend="using-ghc"/>) also make sense in interactive mode. The ones hunk ./ghc/docs/users_guide/ghci.sgml 699 - Most packages (see ) are + Most packages (see ) are hunk ./ghc/docs/users_guide/ghci.sgml 747 - source code, see .) For + source code, see .) For hunk ./ghc/docs/users_guide/ghci.sgml 785 - depends on (see ). + depends on (see ). hunk ./ghc/docs/users_guide/ghci.sgml 878 - outputs the current date & time: + outputs the current date & time: hunk ./ghc/docs/users_guide/ghci.sgml 978 - typed at the prompt. See for + typed at the prompt. See for hunk ./ghc/docs/users_guide/ghci.sgml 1008 - Sets various options. See + Sets various options. See hunk ./ghc/docs/users_guide/ghci.sgml 1091 - Unsets certain options. See + Unsets certain options. See hunk ./ghc/docs/users_guide/ghci.sgml 1195 - linkend="flag-reference">), may be set using + linkend="flag-reference"/>), may be set using hunk ./ghc/docs/users_guide/ghci.sgml 1204 - lists the reverse for each + lists the reverse for each hunk ./ghc/docs/users_guide/glasgow_exts.sgml 80 - linkend="ghc-language-features">, except where otherwise + linkend="ghc-language-features"/>, except where otherwise hunk ./ghc/docs/users_guide/glasgow_exts.sgml 131 - See . Only relevant + See . Only relevant hunk ./ghc/docs/users_guide/glasgow_exts.sgml 140 - See . Only relevant if + See . Only relevant if hunk ./ghc/docs/users_guide/glasgow_exts.sgml 149 - See . Independent of + See . Independent of hunk ./ghc/docs/users_guide/glasgow_exts.sgml 166 - See . Independent of + See . Independent of hunk ./ghc/docs/users_guide/glasgow_exts.sgml 195 - LinkEnd="rebindable-syntax">. + linkend="rebindable-syntax"/>. hunk ./ghc/docs/users_guide/glasgow_exts.sgml 203 - linkend="template-haskell">). Currently also implied by + linkend="template-haskell"/>). Currently also implied by hunk ./ghc/docs/users_guide/glasgow_exts.sgml 218 - linkend="implicit-parameters">). Currently also implied by + linkend="implicit-parameters"/>). Currently also implied by hunk ./ghc/docs/users_guide/glasgow_exts.sgml 488 - linkend="search-path">. + linkend="search-path"/>. hunk ./ghc/docs/users_guide/glasgow_exts.sgml 508 -The discussion that follows is an abbreviated version of Simon Peyton Jones's original proposal. (Note that the proposal was written before pattern guards were implemented, so refers to them as unimplemented.) +The discussion that follows is an abbreviated version of Simon Peyton Jones's original proposal. (Note that the proposal was written before pattern guards were implemented, so refers to them as unimplemented.) hunk ./ghc/docs/users_guide/glasgow_exts.sgml 520 -where v is the value that the key maps to. Now consider the following definition: +where v is the value that the key maps to. Now consider the following definition: hunk ./ghc/docs/users_guide/glasgow_exts.sgml 524 -clunky env var1 var2 | ok1 && ok2 = val1 + val2 +clunky env var1 var2 | ok1 && ok2 = val1 + val2 hunk ./ghc/docs/users_guide/glasgow_exts.sgml 550 -What is clunky doing? The guard ok1 && +What is clunky doing? The guard ok1 && hunk ./ghc/docs/users_guide/glasgow_exts.sgml 555 -returned values to val1 and val2 +returned values to val1 and val2 hunk ./ghc/docs/users_guide/glasgow_exts.sgml 618 -f x | [y] <- x +f x | [y] <- x hunk ./ghc/docs/users_guide/glasgow_exts.sgml 620 - , Just z <- h y + , Just z <- h y hunk ./ghc/docs/users_guide/glasgow_exts.sgml 654 -justOnes = mdo xs <- Just (1:xs) +justOnes = mdo xs <- Just (1:xs) hunk ./ghc/docs/users_guide/glasgow_exts.sgml 734 - [ (x, y) | x <- xs | y <- ys ] + [ (x, y) | x <- xs | y <- ys ] hunk ./ghc/docs/users_guide/glasgow_exts.sgml 747 - [ e | p1 <- e11, p2 <- e12, ... - | q1 <- e21, q2 <- e22, ... + [ e | p1 <- e11, p2 <- e12, ... + | q1 <- e21, q2 <- e22, ... hunk ./ghc/docs/users_guide/glasgow_exts.sgml 756 - [ e | ((p1,p2), (q1,q2), ...) <- zipN [(p1,p2) | p1 <- e11, p2 <- e12, ...] - [(q1,q2) | q1 <- e21, q2 <- e22, ...] + [ e | ((p1,p2), (q1,q2), ...) <- zipN [(p1,p2) | p1 <- e11, p2 <- e12, ...] + [(q1,q2) | q1 <- e21, q2 <- e22, ...] hunk ./ghc/docs/users_guide/glasgow_exts.sgml 863 -(see ). +(see ). hunk ./ghc/docs/users_guide/glasgow_exts.sgml 1023 -Augustsson's hbc Haskell compiler for several years, and +Augustsson's hbc Haskell compiler for several years, and hunk ./ghc/docs/users_guide/glasgow_exts.sgml 1134 -An easy extension (implemented in hbc) is to allow +An easy extension (implemented in hbc) is to allow hunk ./ghc/docs/users_guide/glasgow_exts.sgml 1332 -But a and b have distinct types, and so can't be compared. +But a and b have distinct types, and so can't be compared. hunk ./ghc/docs/users_guide/glasgow_exts.sgml 1355 -classes. There's lots of background in the paper (Simon Peyton Jones, Mark +classes: exploring the design space (Simon Peyton Jones, Mark hunk ./ghc/docs/users_guide/glasgow_exts.sgml 1362 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 1426 -mentioned in ) +mentioned in ) hunk ./ghc/docs/users_guide/glasgow_exts.sgml 1471 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 1522 -in GHC, you can give the foralls if you want. See ). +in GHC, you can give the foralls if you want. See ). hunk ./ghc/docs/users_guide/glasgow_exts.sgml 1527 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 1560 -linkend="functional-dependencies">). The reason for this is there +linkend="functional-dependencies"/>). The reason for this is there hunk ./ghc/docs/users_guide/glasgow_exts.sgml 1607 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 1615 -It is often convenient to use generalised type synonyms (see ) at the right hand +It is often convenient to use generalised type synonyms (see ) at the right hand hunk ./ghc/docs/users_guide/glasgow_exts.sgml 1847 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2032 - min = let ?cmp = (<=) in least + min = let ?cmp = (<=) in least hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2281 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2284 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2293 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2295 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2297 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2299 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2301 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2303 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2305 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2307 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2321 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2324 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2326 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2328 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2389 - On the right of a function arrow (see ) + On the right of a function arrow (see ) hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2394 - In a pattern type signature (see ) + In a pattern type signature (see ) hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2560 -(), thus: +(), thus: hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2662 -The pattern (xs::[a]) includes a type signature for xs. +The pattern (xs::[a]) includes a type signature for xs. hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2665 -In particular, it is in scope at the type signature for y. +In particular, it is in scope at the type signature for y. hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2671 -At ordinary type signatures, such as that for ys, any type variables +At ordinary type signatures, such as that for ys, any type variables hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2675 -quantified, which is just as in Haskell 98.) In this case, since a -is in scope, it is not universally quantified, so the type of ys is -the same as that of xs. In Haskell 98 it is not possible to declare -a type for ys; a major benefit of scoped type variables is that +quantified, which is just as in Haskell 98.) In this case, since a +is in scope, it is not universally quantified, so the type of ys is +the same as that of xs. In Haskell 98 it is not possible to declare +a type for ys; a major benefit of scoped type variables is that hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2765 - f (x::a) = <...rhs of f...> + f (x::a) = <...rhs of f...> hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2767 - in <...body of let...> + in <...body of let...> hunk ./ghc/docs/users_guide/glasgow_exts.sgml 2807 -It's illegal because a is not in scope in the body of f, +It's illegal because a is not in scope in the body of f, hunk ./ghc/docs/users_guide/glasgow_exts.sgml 3610 -After simplification using rewrite rules (see ) +After simplification using rewrite rules (see ) hunk ./ghc/docs/users_guide/glasgow_exts.sgml 3850 -u `bind` f = returnA &&& u >>> f +u `bind` f = returnA &&& u >>> f hunk ./ghc/docs/users_guide/glasgow_exts.sgml 4145 - linkend="noinline-pragma">). + linkend="noinline-pragma"/>). hunk ./ghc/docs/users_guide/glasgow_exts.sgml 4234 - (). + (). hunk ./ghc/docs/users_guide/glasgow_exts.sgml 4268 - this source file. See for + this source file. See for hunk ./ghc/docs/users_guide/glasgow_exts.sgml 4276 - described in . + described in . hunk ./ghc/docs/users_guide/glasgow_exts.sgml 4308 - (see ) that rewrites a call to the + (see ) that rewrites a call to the hunk ./ghc/docs/users_guide/glasgow_exts.sgml 4319 - RULES pragma (see ). + RULES pragma (see ). hunk ./ghc/docs/users_guide/glasgow_exts.sgml 4358 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 4361 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 4365 - the T constructor is scrutinised and the + the T constructor is scrutinised and the hunk ./ghc/docs/users_guide/glasgow_exts.sgml 4375 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 4378 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 4380 - The compiler will avoid reboxing f1 - and f2 by inlining + + The compiler will avoid reboxing f1 + and f2 by inlining + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 4387 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 4389 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 4392 - T constructor, by flattening the pair. + T constructor, by flattening the pair. hunk ./ghc/docs/users_guide/glasgow_exts.sgml 4395 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 4398 - + hunk ./ghc/docs/users_guide/glasgow_exts.sgml 4401 - directly in the T constructor. The + directly in the T constructor. The hunk ./ghc/docs/users_guide/glasgow_exts.sgml 4428 -the flag () is on, +the flag () is on, hunk ./ghc/docs/users_guide/glasgow_exts.sgml 4430 -() is not specified. +() is not specified. hunk ./ghc/docs/users_guide/glasgow_exts.sgml 4468 -A rule may optionally have a phase-control number (see ), +A rule may optionally have a phase-control number (see ), hunk ./ghc/docs/users_guide/glasgow_exts.sgml 4626 -types match too. See below. +types match too. See below. hunk ./ghc/docs/users_guide/glasgow_exts.sgml 4643 -will substitute for s and t, giving an expression which does match. -If s or t was (a) used more than once, and (b) large or a redex, then it would +will substitute for s and t, giving an expression which does match. +If s or t was (a) used more than once, and (b) large or a redex, then it would hunk ./ghc/docs/users_guide/glasgow_exts.sgml 4985 - The defintion of (say) build in GHC/Base.lhs looks llike this: + The defintion of (say) build in GHC/Base.lhs looks llike this: hunk ./ghc/docs/users_guide/glasgow_exts.sgml 5044 - expressions show and x. + expressions show and x. hunk ./ghc/docs/users_guide/glasgow_exts.sgml 5072 - expression eta (which used to be called - x). + expression eta (which used to be called + x). hunk ./ghc/docs/users_guide/gone_wrong.sgml 4 - problems + problems hunk ./ghc/docs/users_guide/gone_wrong.sgml 7 - then you may have found a bug—please - report it! See for details on how to + then you may have found a bug—please + report it! See for details on how to hunk ./ghc/docs/users_guide/gone_wrong.sgml 13 - (, which describes Glasgow + (, which describes Glasgow hunk ./ghc/docs/users_guide/gone_wrong.sgml 20 - compiler problems - problems with the compiler + compiler problems + problems with the compiler hunk ./ghc/docs/users_guide/gone_wrong.sgml 27 - These events are always bugs in + These events are always bugs in hunk ./ghc/docs/users_guide/gone_wrong.sgml 51 - Sensitivity to .hi interface files: + Sensitivity to .hi interface files: hunk ./ghc/docs/users_guide/gone_wrong.sgml 110 - problems running your program + problems running your program hunk ./ghc/docs/users_guide/gone_wrong.sgml 113 - programs, please see ). + programs, please see ). hunk ./ghc/docs/users_guide/gone_wrong.sgml 137 - for the importing module. This applies to pragmas - inside interfaces too! If the pragma is lying + for the importing module. This applies to pragmas + inside interfaces too! If the pragma is lying hunk ./ghc/docs/users_guide/gone_wrong.sgml 157 - see . + see . hunk ./ghc/docs/users_guide/gone_wrong.sgml 167 - + hunk ./ghc/docs/users_guide/gone_wrong.sgml 172 - + hunk ./ghc/docs/users_guide/gone_wrong.sgml 184 - report it (see ). + report it (see ). hunk ./ghc/docs/users_guide/installing.sgml 1 - - Installing GHC -binary installations -installation, of binaries + + Installing GHC +binary installations +installation, of binaries hunk ./ghc/docs/users_guide/installing.sgml 6 - + hunk ./ghc/docs/users_guide/installing.sgml 13 -other fptools programs, many are written in +other fptools programs, many are written in hunk ./ghc/docs/users_guide/installing.sgml 16 - + hunk ./ghc/docs/users_guide/installing.sgml 18 -This guide is in several parts: +This guide is in several parts: hunk ./ghc/docs/users_guide/installing.sgml 22 - Installing on Unix-a-likes (). + Installing on Unix-a-likes (). hunk ./ghc/docs/users_guide/installing.sgml 26 - Installing on Windows (). + Installing on Windows (). hunk ./ghc/docs/users_guide/installing.sgml 30 - The layout of installed files (). You don't need to know this to + The layout of installed files (). You don't need to know this to hunk ./ghc/docs/users_guide/installing.sgml 37 - Installing on Unix-a-likes + Installing on Unix-a-likes hunk ./ghc/docs/users_guide/installing.sgml 56 - RPM source & binary packages for RedHat and SuSE + RPM source & binary packages for RedHat and SuSE hunk ./ghc/docs/users_guide/installing.sgml 74 - the ports tree (cd /usr/ports/lang/ghc && make + the ports tree (cd /usr/ports/lang/ghc && make hunk ./ghc/docs/users_guide/installing.sgml 85 - -GHC binary distributions + +GHC binary distributions hunk ./ghc/docs/users_guide/installing.sgml 88 - -bundles of binary stuff - + +bundles of binary stuff + hunk ./ghc/docs/users_guide/installing.sgml 92 - + hunk ./ghc/docs/users_guide/installing.sgml 94 -bundle-platform.tar.gz. (See the building guide for the definition of a platform.) Suppose that you untar a binary-distribution bundle, thus: - +bundle-platform.tar.gz. (See the building guide for the definition of a platform.) Suppose that you untar a binary-distribution bundle, thus: + hunk ./ghc/docs/users_guide/installing.sgml 97 - + hunk ./ghc/docs/users_guide/installing.sgml 99 - + hunk ./ghc/docs/users_guide/installing.sgml 101 -% gunzip < ghc-x.xx-sun-sparc-solaris2.tar.gz | tar xvf - +% gunzip < ghc-x.xx-sun-sparc-solaris2.tar.gz | tar xvf - hunk ./ghc/docs/users_guide/installing.sgml 103 - + hunk ./ghc/docs/users_guide/installing.sgml 105 - + hunk ./ghc/docs/users_guide/installing.sgml 107 -ghc-version, with the +ghc-version, with the hunk ./ghc/docs/users_guide/installing.sgml 109 - + hunk ./ghc/docs/users_guide/installing.sgml 111 - -binary distribution, layout -directory layout (binary distributions) - + +binary distribution, layout +directory layout (binary distributions) + hunk ./ghc/docs/users_guide/installing.sgml 116 - -Makefile.in - - -the raw material from which the Makefile -will be made (). - - - -configure - - -the configuration script (). - - - -README - - + +Makefile.in + + +the raw material from which the Makefile +will be made (). + + + +configure + + +the configuration script (). + + + +README + + hunk ./ghc/docs/users_guide/installing.sgml 136 - - - -INSTALL - - + + + +INSTALL + + hunk ./ghc/docs/users_guide/installing.sgml 144 - - - -ANNOUNCE - - + + + +ANNOUNCE + + hunk ./ghc/docs/users_guide/installing.sgml 151 - - - -NEWS - - + + + +NEWS + + hunk ./ghc/docs/users_guide/installing.sgml 158 -of ANNOUNCE. For GHC, the release notes are contained in the User +of ANNOUNCE. For GHC, the release notes are contained in the User hunk ./ghc/docs/users_guide/installing.sgml 160 - - - - bin/platform - - + + + + bin/platform + + hunk ./ghc/docs/users_guide/installing.sgml 169 - - - -lib/platform/ - - + + + +lib/platform/ + + hunk ./ghc/docs/users_guide/installing.sgml 177 -each fptools project, whose name is the name of the project with its +each fptools project, whose name is the name of the project with its hunk ./ghc/docs/users_guide/installing.sgml 179 -ghc-x.xx/ where x.xx is the version number of GHC in the bundle. - +ghc-x.xx/ where x.xx is the version number of GHC in the bundle. + hunk ./ghc/docs/users_guide/installing.sgml 182 - + hunk ./ghc/docs/users_guide/installing.sgml 184 - + hunk ./ghc/docs/users_guide/installing.sgml 186 - - + + hunk ./ghc/docs/users_guide/installing.sgml 189 - -libHSstd.a etc: - - + +libHSstd.a etc: + + hunk ./ghc/docs/users_guide/installing.sgml 194 - - - -ghc-iface.prl etc: - - + + + +ghc-iface.prl etc: + + hunk ./ghc/docs/users_guide/installing.sgml 201 - - - -import/ - - -Interface files (.hi) for the prelude. - - - -include/ - - -A few C #include files. - - - - - - -share/ - - + + + +import/ + + +Interface files (.hi) for the prelude. + + + +include/ + + +A few C #include files. + + + + + + +share/ + + hunk ./ghc/docs/users_guide/installing.sgml 226 -fptools project. - - - -html/ - - +fptools project. + + + +html/ + + hunk ./ghc/docs/users_guide/installing.sgml 235 - - - - + + + + hunk ./ghc/docs/users_guide/installing.sgml 240 - -Installing + +Installing hunk ./ghc/docs/users_guide/installing.sgml 243 - + hunk ./ghc/docs/users_guide/installing.sgml 246 -configureconfigure +configureconfigure hunk ./ghc/docs/users_guide/installing.sgml 248 -bundle and typing ./configure. That should convert -Makefile.in to Makefile. - +bundle and typing ./configure. That should convert +Makefile.in to Makefile. + hunk ./ghc/docs/users_guide/installing.sgml 252 - -installing in-place -in-place installation -You can now either start using the tools in-situ without going -through any installation process, just type make in-place to set the -tools up for this. You'll also want to add the path which make will -now echo to your PATH environment variable. This option is useful if + +installing in-place +in-place installation +You can now either start using the tools in-situ without going +through any installation process, just type make in-place to set the +tools up for this. You'll also want to add the path which make will +now echo to your PATH environment variable. This option is useful if hunk ./ghc/docs/users_guide/installing.sgml 264 - + hunk ./ghc/docs/users_guide/installing.sgml 266 - + hunk ./ghc/docs/users_guide/installing.sgml 268 - + hunk ./ghc/docs/users_guide/installing.sgml 270 - + hunk ./ghc/docs/users_guide/installing.sgml 272 - - + + hunk ./ghc/docs/users_guide/installing.sgml 275 - - Edit the Makefile and check the settings of the following variables: + + Edit the Makefile and check the settings of the following variables: hunk ./ghc/docs/users_guide/installing.sgml 278 -directories, installation -installation directories +directories, installation +installation directories hunk ./ghc/docs/users_guide/installing.sgml 281 - + hunk ./ghc/docs/users_guide/installing.sgml 283 - -platform - - + +platform + + hunk ./ghc/docs/users_guide/installing.sgml 288 - - - -bindir - - + + + +bindir + + hunk ./ghc/docs/users_guide/installing.sgml 296 - - - -libdir - - + + + +libdir + + hunk ./ghc/docs/users_guide/installing.sgml 304 - - - -datadir - - + + + +datadir + + hunk ./ghc/docs/users_guide/installing.sgml 312 - - - -infodir - - + + + +infodir + + hunk ./ghc/docs/users_guide/installing.sgml 320 - - - -htmldir - - + + + +htmldir + + hunk ./ghc/docs/users_guide/installing.sgml 328 - - - -dvidir - - + + + +dvidir + + hunk ./ghc/docs/users_guide/installing.sgml 336 - - - + + + hunk ./ghc/docs/users_guide/installing.sgml 341 -configureconfigure +configureconfigure hunk ./ghc/docs/users_guide/installing.sgml 347 -Instead of running configure, it is -perfectly OK to copy Makefile.in to -Makefile and set all these variables directly -yourself. But do it right! - +Instead of running configure, it is +perfectly OK to copy Makefile.in to +Makefile and set all these variables directly +yourself. But do it right! + hunk ./ghc/docs/users_guide/installing.sgml 353 - - + + hunk ./ghc/docs/users_guide/installing.sgml 356 - -Run make install. This -should work with ordinary Unix -make—no need for fancy stuff like GNU -make. + +Run make install. This +should work with ordinary Unix +make—no need for fancy stuff like GNU +make. hunk ./ghc/docs/users_guide/installing.sgml 362 - - - + + + hunk ./ghc/docs/users_guide/installing.sgml 366 - -rehash (t?csh or zsh users), so your shell will see the new + +rehash (t?csh or zsh users), so your shell will see the new hunk ./ghc/docs/users_guide/installing.sgml 370 - - - + + + hunk ./ghc/docs/users_guide/installing.sgml 374 - + hunk ./ghc/docs/users_guide/installing.sgml 376 -. Be sure to use a -v +. Be sure to use a -v hunk ./ghc/docs/users_guide/installing.sgml 381 - - + + hunk ./ghc/docs/users_guide/installing.sgml 384 - + hunk ./ghc/docs/users_guide/installing.sgml 386 - + hunk ./ghc/docs/users_guide/installing.sgml 388 - -link, installed as ghc + +link, installed as ghc hunk ./ghc/docs/users_guide/installing.sgml 391 -procedure will install GHC as ghc-x.xx where x.xx is the version +procedure will install GHC as ghc-x.xx where x.xx is the version hunk ./ghc/docs/users_guide/installing.sgml 393 -directory) from ghc to ghc-x.xx. If you install multiple versions -of GHC then the last one “wins”, and “ghc” will invoke the last +directory) from ghc to ghc-x.xx. If you install multiple versions +of GHC then the last one “wins”, and “ghc” will invoke the last hunk ./ghc/docs/users_guide/installing.sgml 396 -regardless, ghc-x.xx should always invoke GHC version x.xx. - +regardless, ghc-x.xx should always invoke GHC version x.xx. + hunk ./ghc/docs/users_guide/installing.sgml 399 - + hunk ./ghc/docs/users_guide/installing.sgml 402 - -What bundles there are + +What bundles there are hunk ./ghc/docs/users_guide/installing.sgml 405 - -bundles, binary There are + +bundles, binary There are hunk ./ghc/docs/users_guide/installing.sgml 409 -ghc-x.xx-bundle-platform.tar.gz, +ghc-x.xx-bundle-platform.tar.gz, hunk ./ghc/docs/users_guide/installing.sgml 412 - + hunk ./ghc/docs/users_guide/installing.sgml 414 - - + + hunk ./ghc/docs/users_guide/installing.sgml 417 - -prof: - - + +prof: + + hunk ./ghc/docs/users_guide/installing.sgml 422 -profiling bundles -bundles, profiling - - - -par: - - +profiling bundles +bundles, profiling + + + +par: + + hunk ./ghc/docs/users_guide/installing.sgml 432 -parallel bundles -bundles, parallel - - - -gran: - - +parallel bundles +bundles, parallel + + + +gran: + + hunk ./ghc/docs/users_guide/installing.sgml 442 -bundles, gransim -gransim bundles - - - -ticky: - - +bundles, gransim +gransim bundles + + + +ticky: + + hunk ./ghc/docs/users_guide/installing.sgml 453 -bundles, ticky-ticky -ticky-ticky bundles - - - - +bundles, ticky-ticky +ticky-ticky bundles + + + + hunk ./ghc/docs/users_guide/installing.sgml 460 - -One likely scenario is that you will grab two + +One likely scenario is that you will grab two hunk ./ghc/docs/users_guide/installing.sgml 464 - + hunk ./ghc/docs/users_guide/installing.sgml 472 - + hunk ./ghc/docs/users_guide/installing.sgml 474 - -Testing that GHC seems to be working - + +Testing that GHC seems to be working + hunk ./ghc/docs/users_guide/installing.sgml 478 - -testing a new GHC - + +testing a new GHC + hunk ./ghc/docs/users_guide/installing.sgml 482 - -The way to do this is, of course, to compile and run this program -(in a file Main.hs): - + +The way to do this is, of course, to compile and run this program +(in a file Main.hs): + hunk ./ghc/docs/users_guide/installing.sgml 487 - + hunk ./ghc/docs/users_guide/installing.sgml 489 - + hunk ./ghc/docs/users_guide/installing.sgml 491 - + hunk ./ghc/docs/users_guide/installing.sgml 493 - + hunk ./ghc/docs/users_guide/installing.sgml 495 - -Compile the program, using the -v (verbose) flag to verify that + +Compile the program, using the -v (verbose) flag to verify that hunk ./ghc/docs/users_guide/installing.sgml 499 - -% ghc -v -o hello Main.hs + +% ghc -v -o hello Main.hs hunk ./ghc/docs/users_guide/installing.sgml 502 - + hunk ./ghc/docs/users_guide/installing.sgml 504 - + hunk ./ghc/docs/users_guide/installing.sgml 507 - + hunk ./ghc/docs/users_guide/installing.sgml 509 -Hello, world! +Hello, world! hunk ./ghc/docs/users_guide/installing.sgml 511 - + hunk ./ghc/docs/users_guide/installing.sgml 513 - + hunk ./ghc/docs/users_guide/installing.sgml 515 -nfibnfib program, using different numeric types. Start with -nfib :: Int -> Int, and then try Integer, Float, Double, -Rational and perhaps the overloaded version. Code for this is -distributed in ghc/misc/examples/nfib/ in a source distribution. - +nfibnfib program, using different numeric types. Start with +nfib :: Int -> Int, and then try Integer, Float, Double, +Rational and perhaps the overloaded version. Code for this is +distributed in ghc/misc/examples/nfib/ in a source distribution. + hunk ./ghc/docs/users_guide/installing.sgml 524 - + hunk ./ghc/docs/users_guide/installing.sgml 526 - + hunk ./ghc/docs/users_guide/installing.sgml 528 - + hunk ./ghc/docs/users_guide/installing.sgml 531 -Installing on Windows +Installing on Windows hunk ./ghc/docs/users_guide/installing.sgml 538 -Installing GHC on Windows +Installing GHC on Windows hunk ./ghc/docs/users_guide/installing.sgml 544 -Download the Installshield setup.exe +Download the Installshield setup.exe hunk ./ghc/docs/users_guide/installing.sgml 546 -haskell.org. +haskell.org. hunk ./ghc/docs/users_guide/installing.sgml 550 -Run setup.exe. +Run setup.exe. hunk ./ghc/docs/users_guide/installing.sgml 559 -or "remove" GHC. Choose "remove"; then run setup.exe a +or "remove" GHC. Choose "remove"; then run setup.exe a hunk ./ghc/docs/users_guide/installing.sgml 587 -c:\Documents and Settings\<username>\Local Settings\Temp +c:\Documents and Settings\<username>\Local Settings\Temp hunk ./ghc/docs/users_guide/installing.sgml 596 - + hunk ./ghc/docs/users_guide/installing.sgml 599 - + hunk ./ghc/docs/users_guide/installing.sgml 601 - + hunk ./ghc/docs/users_guide/installing.sgml 610 -bash$ +bash$ hunk ./ghc/docs/users_guide/installing.sgml 618 - + hunk ./ghc/docs/users_guide/installing.sgml 622 - + hunk ./ghc/docs/users_guide/installing.sgml 625 -Moving GHC around - -At the moment, GHC installs in a fixed place (c:/ghc/ghc-x.yy, +Moving GHC around + +At the moment, GHC installs in a fixed place (c:/ghc/ghc-x.yy, hunk ./ghc/docs/users_guide/installing.sgml 629 -the ghc-x.yy directory. (You may need to fix up +the ghc-x.yy directory. (You may need to fix up hunk ./ghc/docs/users_guide/installing.sgml 639 - + hunk ./ghc/docs/users_guide/installing.sgml 642 -Installing ghc-win32 FAQ + +Installing ghc-win32 FAQ hunk ./ghc/docs/users_guide/installing.sgml 645 - + hunk ./ghc/docs/users_guide/installing.sgml 647 - + hunk ./ghc/docs/users_guide/installing.sgml 649 - - + + hunk ./ghc/docs/users_guide/installing.sgml 652 - - + + hunk ./ghc/docs/users_guide/installing.sgml 655 - - -Symlinks only work under Cygwin (), so binaries + + +Symlinks only work under Cygwin (), so binaries hunk ./ghc/docs/users_guide/installing.sgml 660 - - + + hunk ./ghc/docs/users_guide/installing.sgml 663 - + hunk ./ghc/docs/users_guide/installing.sgml 665 - + hunk ./ghc/docs/users_guide/installing.sgml 667 - - -I'm getting “permission denied” messages from the rm or -mv. - - + + +I'm getting “permission denied” messages from the rm or +mv. + + hunk ./ghc/docs/users_guide/installing.sgml 674 - - + + hunk ./ghc/docs/users_guide/installing.sgml 680 - - + + hunk ./ghc/docs/users_guide/installing.sgml 683 - + hunk ./ghc/docs/users_guide/installing.sgml 685 - + hunk ./ghc/docs/users_guide/installing.sgml 688 - -Further information on using GHC under Windows can be found in +Further information on using GHC under Windows can be found in . Note: ignore the installation instructions, which are rather -out of date; the Miscellaneous section at the bottom of +pages. Note: ignore the installation instructions, which are rather +out of date; the Miscellaneous section at the bottom of hunk ./ghc/docs/users_guide/installing.sgml 695 - + hunk ./ghc/docs/users_guide/installing.sgml 697 - + hunk ./ghc/docs/users_guide/installing.sgml 699 - + hunk ./ghc/docs/users_guide/installing.sgml 702 -The layout of installed files +The layout of installed files hunk ./ghc/docs/users_guide/installing.sgml 713 - known as $(libdir), holds all the + known as $(libdir), holds all the hunk ./ghc/docs/users_guide/installing.sgml 715 -directory is usually something like /usr/lib/ghc/ghc-5.02. +directory is usually something like /usr/lib/ghc/ghc-5.02. hunk ./ghc/docs/users_guide/installing.sgml 720 - known as $(bindir), holds executables that + known as $(bindir), holds executables that hunk ./ghc/docs/users_guide/installing.sgml 723 -ghc and ghci. On Unix, this directory -can be anywhere, but is typically something like /usr/local/bin. On Windows, -however, this directory must be $(libdir)/bin. +ghc and ghci. On Unix, this directory +can be anywhere, but is typically something like /usr/local/bin. On Windows, +however, this directory must be $(libdir)/bin. hunk ./ghc/docs/users_guide/installing.sgml 738 -$(libdir) is passed to GHC using the flag. +$(libdir) is passed to GHC using the flag. hunk ./ghc/docs/users_guide/installing.sgml 749 -$(libdir) from that. [Unix lacks such a system call.] -That is why $(bindir) must be $(libdir)/bin. +$(libdir) from that. [Unix lacks such a system call.] +That is why $(bindir) must be $(libdir)/bin. hunk ./ghc/docs/users_guide/installing.sgml 757 -The binary directory, $(bindir) contains user-visible +The binary directory, $(bindir) contains user-visible hunk ./ghc/docs/users_guide/installing.sgml 764 -$(libdir) is. +$(libdir) is. hunk ./ghc/docs/users_guide/installing.sgml 886 - + hunk ./ghc/docs/users_guide/intro.sgml 11 - linkend="ghci">, and a batch compiler, described throughout . In fact, GHC consists of a single program + linkend="ghci"/>, and a batch compiler, described throughout . In fact, GHC consists of a single program hunk ./ghc/docs/users_guide/intro.sgml 29 - . + . hunk ./ghc/docs/users_guide/intro.sgml 40 - call-graph like structure. See for more + call-graph like structure. See for more hunk ./ghc/docs/users_guide/intro.sgml 47 - - Meta-information: Web sites, mailing lists, etc. + + Meta-information: Web sites, mailing lists, etc. hunk ./ghc/docs/users_guide/intro.sgml 50 - mailing lists, Glasgow Haskell - Glasgow Haskell mailing lists + mailing lists, Glasgow Haskell + Glasgow Haskell mailing lists hunk ./ghc/docs/users_guide/intro.sgml 84 - FAQ first (). + FAQ first (). hunk ./ghc/docs/users_guide/intro.sgml 239 - glasgow-haskell-bugs@haskell.org. + glasgow-haskell-bugs@haskell.org. hunk ./ghc/docs/users_guide/intro.sgml 246 - Take a look at the FAQ () and , which will give you some guidance as to + Take a look at the FAQ () and , which will give you some guidance as to hunk ./ghc/docs/users_guide/intro.sgml 274 - (on a Unix system, uname -a or cat - /etc/motd will show the desired information.) + (on a Unix system, uname -a or cat + /etc/motd will show the desired information.) hunk ./ghc/docs/users_guide/intro.sgml 279 - What version of GCC are you using? gcc - -v will tell you. + What version of GCC are you using? gcc + -v will tell you. hunk ./ghc/docs/users_guide/intro.sgml 292 - (verbose) flag, so we can see exactly + (verbose) flag, so we can see exactly hunk ./ghc/docs/users_guide/intro.sgml 338 - (see ) for a major release + (see ) for a major release hunk ./ghc/docs/users_guide/intro.sgml 394 - linkend="options-help">). + linkend="options-help"/>). hunk ./ghc/docs/users_guide/intro.sgml 400 - + hunk ./ghc/docs/users_guide/lang.sgml 1 - -GHC Language Features + +GHC Language Features hunk ./ghc/docs/users_guide/lang.sgml 4 -&glasgowexts -¶llel +&glasgowexts; +∥ hunk ./ghc/docs/users_guide/lang.sgml 7 - + hunk ./ghc/docs/users_guide/license.sgml 1 - -The Glasgow Haskell Compiler License + +The Glasgow Haskell Compiler License hunk ./ghc/docs/users_guide/license.sgml 4 - + hunk ./ghc/docs/users_guide/license.sgml 7 - + hunk ./ghc/docs/users_guide/license.sgml 9 - + hunk ./ghc/docs/users_guide/license.sgml 12 - + hunk ./ghc/docs/users_guide/license.sgml 14 - - + + hunk ./ghc/docs/users_guide/license.sgml 17 - - + + hunk ./ghc/docs/users_guide/license.sgml 21 - - + + hunk ./ghc/docs/users_guide/license.sgml 24 - - + + hunk ./ghc/docs/users_guide/license.sgml 29 - - + + hunk ./ghc/docs/users_guide/license.sgml 32 - - + + hunk ./ghc/docs/users_guide/license.sgml 37 - - + + hunk ./ghc/docs/users_guide/license.sgml 40 - - + + hunk ./ghc/docs/users_guide/license.sgml 43 - + hunk ./ghc/docs/users_guide/license.sgml 56 - + hunk ./ghc/docs/users_guide/license.sgml 58 - + hunk ./ghc/docs/users_guide/packages.sgml 21 - linkend="package-management">. + linkend="package-management"/>. hunk ./ghc/docs/users_guide/packages.sgml 62 - linking a program in batch mode mode () + linking a program in batch mode mode () hunk ./ghc/docs/users_guide/packages.sgml 78 -In --make and --interactive modes (), however, GHC figures out +In --make and --interactive modes (), however, GHC figures out hunk ./ghc/docs/users_guide/packages.sgml 115 - linkend="package-management">. + linkend="package-management"/>. hunk ./ghc/docs/users_guide/packages.sgml 149 - work at the moment; see + work at the moment; see hunk ./ghc/docs/users_guide/packages.sgml 171 - . To build these + . To build these hunk ./ghc/docs/users_guide/packages.sgml 441 - linkend="using-packages">). This is normally set to + linkend="using-packages"/>). This is normally set to hunk ./ghc/docs/users_guide/packages.sgml 671 - $ installdir=/usr/local/lib ghc-pkg -a < mypkg.pkg + $ installdir=/usr/local/lib ghc-pkg -a < mypkg.pkg hunk ./ghc/docs/users_guide/parallel.sgml 1 - -Concurrent and Parallel Haskell - + +Concurrent and Parallel Haskell hunk ./ghc/docs/users_guide/parallel.sgml 4 - -Concurrent Haskell -Parallel Haskell + +Concurrent Haskell +Parallel Haskell hunk ./ghc/docs/users_guide/parallel.sgml 10 - + hunk ./ghc/docs/users_guide/parallel.sgml 12 - + hunk ./ghc/docs/users_guide/parallel.sgml 14 - + hunk ./ghc/docs/users_guide/parallel.sgml 16 - + hunk ./ghc/docs/users_guide/parallel.sgml 19 -in such programs may be required. For example, if a concurrent thread has been spawned to handle a mouse click, it isn't +in such programs may be required. For example, if a concurrent thread has been spawned to handle a mouse click, it isn't hunk ./ghc/docs/users_guide/parallel.sgml 21 - + hunk ./ghc/docs/users_guide/parallel.sgml 23 - + hunk ./ghc/docs/users_guide/parallel.sgml 26 - + hunk ./ghc/docs/users_guide/parallel.sgml 28 - + hunk ./ghc/docs/users_guide/parallel.sgml 30 -of Simon Peyton -Jones's Web page. - +of Simon Peyton +Jones's Web page. + hunk ./ghc/docs/users_guide/parallel.sgml 34 - -Parallel Haskell is about speed—spawning + +Parallel Haskell is about speed—spawning hunk ./ghc/docs/users_guide/parallel.sgml 37 -The `threads' are always advisory—if the +The `threads' are always advisory—if the hunk ./ghc/docs/users_guide/parallel.sgml 40 - + hunk ./ghc/docs/users_guide/parallel.sgml 42 - + hunk ./ghc/docs/users_guide/parallel.sgml 46 - + hunk ./ghc/docs/users_guide/parallel.sgml 48 - + hunk ./ghc/docs/users_guide/parallel.sgml 51 - + hunk ./ghc/docs/users_guide/parallel.sgml 53 - -Check the GPH Page + +Check the GPH Page hunk ./ghc/docs/users_guide/parallel.sgml 60 - + hunk ./ghc/docs/users_guide/parallel.sgml 62 - + hunk ./ghc/docs/users_guide/parallel.sgml 66 - + hunk ./ghc/docs/users_guide/parallel.sgml 68 - -Features specific to Parallel Haskell -<IndexTerm><Primary>Parallel Haskell—features</Primary></IndexTerm> + +Features specific to Parallel Haskell +<indexterm><primary>Parallel Haskell—features</primary></indexterm> hunk ./ghc/docs/users_guide/parallel.sgml 72 - -The <Literal>Parallel</Literal> interface (recommended) -<IndexTerm><Primary>Parallel interface</Primary></IndexTerm> + +The <literal>Parallel</literal> interface (recommended) +<indexterm><primary>Parallel interface</primary></indexterm> hunk ./ghc/docs/users_guide/parallel.sgml 76 - + hunk ./ghc/docs/users_guide/parallel.sgml 78 -the Parallel interface: - +the Parallel interface: + hunk ./ghc/docs/users_guide/parallel.sgml 81 - + hunk ./ghc/docs/users_guide/parallel.sgml 83 - + hunk ./ghc/docs/users_guide/parallel.sgml 90 - + hunk ./ghc/docs/users_guide/parallel.sgml 92 - + hunk ./ghc/docs/users_guide/parallel.sgml 94 - -The expression (x `par` y) sparks the evaluation of x -(to weak head normal form) and returns y. Sparks are queued for + +The expression (x `par` y) sparks the evaluation of x +(to weak head normal form) and returns y. Sparks are queued for hunk ./ghc/docs/users_guide/parallel.sgml 102 - + hunk ./ghc/docs/users_guide/parallel.sgml 104 - -The expression (x `seq` y) evaluates x to weak head normal -form and then returns y. The seq primitive can be used to + +The expression (x `seq` y) evaluates x to weak head normal +form and then returns y. The seq primitive can be used to hunk ./ghc/docs/users_guide/parallel.sgml 109 - + hunk ./ghc/docs/users_guide/parallel.sgml 111 - + hunk ./ghc/docs/users_guide/parallel.sgml 113 -nemesis, nfib: - +nemesis, nfib: + hunk ./ghc/docs/users_guide/parallel.sgml 116 - + hunk ./ghc/docs/users_guide/parallel.sgml 118 - + hunk ./ghc/docs/users_guide/parallel.sgml 126 - + hunk ./ghc/docs/users_guide/parallel.sgml 128 - + hunk ./ghc/docs/users_guide/parallel.sgml 130 - -For values of n greater than 1, we use par to spark a thread -to evaluate nfib (n-1), and then we use seq to force the -parent thread to evaluate nfib (n-2) before going on to add + +For values of n greater than 1, we use par to spark a thread +to evaluate nfib (n-1), and then we use seq to force the +parent thread to evaluate nfib (n-2) before going on to add hunk ./ghc/docs/users_guide/parallel.sgml 137 -seq to ensure that the parent will evaluate n2 before -n1 in the expression (n1 + n2 + 1). It is not sufficient to -reorder the expression as (n2 + n1 + 1), because the compiler may +seq to ensure that the parent will evaluate n2 before +n1 in the expression (n1 + n2 + 1). It is not sufficient to +reorder the expression as (n2 + n1 + 1), because the compiler may hunk ./ghc/docs/users_guide/parallel.sgml 141 - + hunk ./ghc/docs/users_guide/parallel.sgml 143 - + hunk ./ghc/docs/users_guide/parallel.sgml 145 - -Underlying functions and primitives -<IndexTerm><Primary>parallelism primitives</Primary></IndexTerm> -<IndexTerm><Primary>primitives for parallelism</Primary></IndexTerm> + +Underlying functions and primitives +<indexterm><primary>parallelism primitives</primary></indexterm> +<indexterm><primary>primitives for parallelism</primary></indexterm> hunk ./ghc/docs/users_guide/parallel.sgml 150 - -The functions par and seq are wired into GHC, and unfold -into uses of the par# and seq# primitives, respectively. If + +The functions par and seq are wired into GHC, and unfold +into uses of the par# and seq# primitives, respectively. If hunk ./ghc/docs/users_guide/parallel.sgml 154 - option. (Anything for a good time…) - + option. (Anything for a good time…) + hunk ./ghc/docs/users_guide/parallel.sgml 157 - + hunk ./ghc/docs/users_guide/parallel.sgml 159 - -Scheduling policy for concurrent threads -<IndexTerm><Primary>Scheduling—concurrent</Primary></IndexTerm> -<IndexTerm><Primary>Concurrent scheduling</Primary></IndexTerm> + +Scheduling policy for concurrent threads +<indexterm><primary>Scheduling—concurrent</primary></indexterm> +<indexterm><primary>Concurrent scheduling</primary></indexterm> hunk ./ghc/docs/users_guide/parallel.sgml 164 - + hunk ./ghc/docs/users_guide/parallel.sgml 168 --C<num> RTS option (concurrent, -parallel) RTS option). However, a context switch doesn't +-C<num> RTS option (concurrent, +parallel) RTS option). However, a context switch doesn't hunk ./ghc/docs/users_guide/parallel.sgml 172 - + hunk ./ghc/docs/users_guide/parallel.sgml 174 - + hunk ./ghc/docs/users_guide/parallel.sgml 179 -adjusted with the -t <num> RTS option (concurrent, parallel) +adjusted with the -t <num> RTS option (concurrent, parallel) hunk ./ghc/docs/users_guide/parallel.sgml 183 - + hunk ./ghc/docs/users_guide/parallel.sgml 185 - + hunk ./ghc/docs/users_guide/parallel.sgml 187 - -Scheduling policy for parallel threads -<IndexTerm><Primary>Scheduling—parallel</Primary></IndexTerm> -<IndexTerm><Primary>Parallel scheduling</Primary></IndexTerm> + +Scheduling policy for parallel threads +<indexterm><primary>Scheduling—parallel</primary></indexterm> +<indexterm><primary>Parallel scheduling</primary></indexterm> hunk ./ghc/docs/users_guide/parallel.sgml 192 - + hunk ./ghc/docs/users_guide/parallel.sgml 196 - + hunk ./ghc/docs/users_guide/parallel.sgml 198 - + hunk ./ghc/docs/users_guide/parallel.sgml 200 - + hunk ./ghc/docs/users_guide/parallel.sgml 202 - + hunk ./ghc/docs/users_guide/phases.sgml 10 - the ghc has wired into it. For example, you + the ghc has wired into it. For example, you hunk ./ghc/docs/users_guide/phases.sgml 131 - custom pre-processor (see ). + custom pre-processor (see ). hunk ./ghc/docs/users_guide/phases.sgml 185 - linkend="runtime-control">). + linkend="runtime-control"/>). hunk ./ghc/docs/users_guide/phases.sgml 221 - linkend="forcing-options-through">). + linkend="forcing-options-through"/>). hunk ./ghc/docs/users_guide/phases.sgml 347 - + hunk ./ghc/docs/users_guide/phases.sgml 351 - + hunk ./ghc/docs/users_guide/phases.sgml 429 - + hunk ./ghc/docs/users_guide/phases.sgml 431 - + hunk ./ghc/docs/users_guide/phases.sgml 448 - linkend="options-optimise">). + linkend="options-optimise"/>). hunk ./ghc/docs/users_guide/phases.sgml 546 - (see ), don't forget to add the + (see ), don't forget to add the hunk ./ghc/docs/users_guide/phases.sgml 653 - . See also . + . See also . hunk ./ghc/docs/users_guide/primitives.sgml 790 -mutable arrays (see ), and +mutable arrays (see ), and hunk ./ghc/docs/users_guide/primitives.sgml 838 -return a single element unboxed tuple (see ). +return a single element unboxed tuple (see ). hunk ./ghc/docs/users_guide/profiling.sgml 2 - Profiling + Profiling hunk ./ghc/docs/users_guide/profiling.sgml 23 - linkend="prof-compiler-options"> + linkend="prof-compiler-options"/> hunk ./ghc/docs/users_guide/profiling.sgml 64 -nfib n = if n < 2 then 1 else nfib (n-1) + nfib (n-2) +nfib n = if n < 2 then 1 else nfib (n-1) + nfib (n-2) hunk ./ghc/docs/users_guide/profiling.sgml 140 -nfib n = if n < 2 then 1 else nfib (n-1) + nfib (n-2) +nfib n = if n < 2 then 1 else nfib (n-1) + nfib (n-2) hunk ./ghc/docs/users_guide/profiling.sgml 211 - In addition you can use the RTS option + In addition you can use the RTS option hunk ./ghc/docs/users_guide/profiling.sgml 228 - + hunk ./ghc/docs/users_guide/profiling.sgml 233 - - + + hunk ./ghc/docs/users_guide/profiling.sgml 243 - linkend="prof-xml-tool">) will be able to display real loops in + linkend="prof-xml-tool"/>) will be able to display real loops in hunk ./ghc/docs/users_guide/profiling.sgml 297 - Time spent in foreign code (see ) + Time spent in foreign code (see ) hunk ./ghc/docs/users_guide/profiling.sgml 345 - - - : + + + : hunk ./ghc/docs/users_guide/profiling.sgml 349 - + hunk ./ghc/docs/users_guide/profiling.sgml 360 - - + + hunk ./ghc/docs/users_guide/profiling.sgml 371 - : + : hunk ./ghc/docs/users_guide/profiling.sgml 374 - + hunk ./ghc/docs/users_guide/profiling.sgml 376 - _scc_ constructs for all + _scc_ constructs for all hunk ./ghc/docs/users_guide/profiling.sgml 378 - - + + hunk ./ghc/docs/users_guide/profiling.sgml 381 - - : + + : hunk ./ghc/docs/users_guide/profiling.sgml 384 - - All top-level functions, + + All top-level functions, hunk ./ghc/docs/users_guide/profiling.sgml 387 - _scc_'d. - - + _scc_'d. + + hunk ./ghc/docs/users_guide/profiling.sgml 391 - - : + + : hunk ./ghc/docs/users_guide/profiling.sgml 394 - + hunk ./ghc/docs/users_guide/profiling.sgml 399 - - + + hunk ./ghc/docs/users_guide/profiling.sgml 402 - - : + + : hunk ./ghc/docs/users_guide/profiling.sgml 405 - - Ignore any _scc_ + + Ignore any _scc_ hunk ./ghc/docs/users_guide/profiling.sgml 408 - _scc_s can be compiled + _scc_s can be compiled hunk ./ghc/docs/users_guide/profiling.sgml 410 - - + + hunk ./ghc/docs/users_guide/profiling.sgml 413 - + hunk ./ghc/docs/users_guide/profiling.sgml 418 - Time and allocation profiling + Time and allocation profiling hunk ./ghc/docs/users_guide/profiling.sgml 425 - - - or : + + + or : hunk ./ghc/docs/users_guide/profiling.sgml 431 - - The option produces a standard - time profile report. It is written + + The option produces a standard + time profile report. It is written hunk ./ghc/docs/users_guide/profiling.sgml 435 - program.prof. + program.prof. hunk ./ghc/docs/users_guide/profiling.sgml 437 - The option produces a more + The option produces a more hunk ./ghc/docs/users_guide/profiling.sgml 449 - profiling tool, see . + profiling tool, see . hunk ./ghc/docs/users_guide/profiling.sgml 461 - See . + See . hunk ./ghc/docs/users_guide/profiling.sgml 465 - + hunk ./ghc/docs/users_guide/profiling.sgml 485 - linkend="prof-compiler-options">). + linkend="prof-compiler-options"/>). hunk ./ghc/docs/users_guide/profiling.sgml 498 - . + . hunk ./ghc/docs/users_guide/profiling.sgml 568 - detail below (). + detail below (). hunk ./ghc/docs/users_guide/profiling.sgml 580 - linkend="biography-prof">). + linkend="biography-prof"/>). hunk ./ghc/docs/users_guide/profiling.sgml 689 - : + : hunk ./ghc/docs/users_guide/profiling.sgml 691 - + hunk ./ghc/docs/users_guide/profiling.sgml 695 - will get 5 samples per second. + will get 5 samples per second. hunk ./ghc/docs/users_guide/profiling.sgml 698 - + hunk ./ghc/docs/users_guide/profiling.sgml 934 - by the runtime option into a + by the runtime option into a hunk ./ghc/docs/users_guide/profiling.sgml 949 - + hunk ./ghc/docs/users_guide/profiling.sgml 951 - - - + + + hunk ./ghc/docs/users_guide/profiling.sgml 958 - The option causes rougher bands (those + The option causes rougher bands (those hunk ./ghc/docs/users_guide/profiling.sgml 961 - - + + hunk ./ghc/docs/users_guide/profiling.sgml 964 - - - + + + hunk ./ghc/docs/users_guide/profiling.sgml 971 - use a big box instead. The option + use a big box instead. The option hunk ./ghc/docs/users_guide/profiling.sgml 973 - - + + hunk ./ghc/docs/users_guide/profiling.sgml 976 - - - + + + hunk ./ghc/docs/users_guide/profiling.sgml 986 - option causes the graph to be drawn in + option causes the graph to be drawn in hunk ./ghc/docs/users_guide/profiling.sgml 993 - - + + hunk ./ghc/docs/users_guide/profiling.sgml 996 - - - + + + hunk ./ghc/docs/users_guide/profiling.sgml 1003 - - + + hunk ./ghc/docs/users_guide/profiling.sgml 1006 - - - + + + hunk ./ghc/docs/users_guide/profiling.sgml 1011 - OTHER band. The flag + OTHER band. The flag hunk ./ghc/docs/users_guide/profiling.sgml 1015 - - + + hunk ./ghc/docs/users_guide/profiling.sgml 1018 - - - + + + hunk ./ghc/docs/users_guide/profiling.sgml 1023 - OTHER band. The flag + OTHER band. The flag hunk ./ghc/docs/users_guide/profiling.sgml 1027 - requests the band limit to be + requests the band limit to be hunk ./ghc/docs/users_guide/profiling.sgml 1031 - - + + hunk ./ghc/docs/users_guide/profiling.sgml 1034 - - - + + + hunk ./ghc/docs/users_guide/profiling.sgml 1043 - flag causes the graph to be drawn using + flag causes the graph to be drawn using hunk ./ghc/docs/users_guide/profiling.sgml 1047 - - + + hunk ./ghc/docs/users_guide/profiling.sgml 1050 - - - + + + hunk ./ghc/docs/users_guide/profiling.sgml 1054 - - + + hunk ./ghc/docs/users_guide/profiling.sgml 1057 - - - + + + hunk ./ghc/docs/users_guide/profiling.sgml 1065 - requests no trace elements to be + requests no trace elements to be hunk ./ghc/docs/users_guide/profiling.sgml 1068 - - + + hunk ./ghc/docs/users_guide/profiling.sgml 1071 - - - + + + hunk ./ghc/docs/users_guide/profiling.sgml 1075 - - + + hunk ./ghc/docs/users_guide/profiling.sgml 1078 - - - + + + hunk ./ghc/docs/users_guide/profiling.sgml 1082 - - + + hunk ./ghc/docs/users_guide/profiling.sgml 1085 - - - + + + hunk ./ghc/docs/users_guide/profiling.sgml 1089 - - - + + + hunk ./ghc/docs/users_guide/profiling.sgml 1189 - gv -watch -seascape FOO.ps & + gv -watch -seascape FOO.ps & hunk ./ghc/docs/users_guide/profiling.sgml 1205 - gv FOO.ps & + gv FOO.ps & hunk ./ghc/docs/users_guide/profiling.sgml 1221 - Using “ticky-ticky” profiling (for implementors) + Using “ticky-ticky” profiling (for implementors) hunk ./ghc/docs/users_guide/profiling.sgml 1234 - (slowly). + (slowly). hunk ./ghc/docs/users_guide/profiling.sgml 1246 - numbers, use a RTS + numbers, use a RTS hunk ./ghc/docs/users_guide/profiling.sgml 1248 - See . + See . hunk ./ghc/docs/users_guide/profiling.sgml 1250 - Compiling your program with the + Compiling your program with the hunk ./ghc/docs/users_guide/profiling.sgml 1339 - human-readable summary. Below the asterisks all - counters maintained by the ticky-ticky system are + human-readable summary. Below the asterisks all + counters maintained by the ticky-ticky system are hunk ./ghc/docs/users_guide/profiling.sgml 1344 - In fact, not all counters are + In fact, not all counters are hunk ./ghc/docs/users_guide/profiling.sgml 1353 - large values! + large values! hunk ./ghc/docs/users_guide/runtime_control.sgml 101 - size + size hunk ./ghc/docs/users_guide/runtime_control.sgml 166 - factor + factor hunk ./ghc/docs/users_guide/runtime_control.sgml 193 - generations + generations hunk ./ghc/docs/users_guide/runtime_control.sgml 209 - above) specifies the minimum allocation + above) specifies the minimum allocation hunk ./ghc/docs/users_guide/runtime_control.sgml 217 - + hunk ./ghc/docs/users_guide/runtime_control.sgml 307 - file + file hunk ./ghc/docs/users_guide/runtime_control.sgml 315 - program.stat. The + program.stat. The hunk ./ghc/docs/users_guide/runtime_control.sgml 339 - hunk ./ghc/docs/users_guide/runtime_control.sgml 342 - The RTS options related to profiling are described in ; and those for concurrent/parallel - stuff, in . + The RTS options related to profiling are described in ; and those for concurrent/parallel + stuff, in . hunk ./ghc/docs/users_guide/runtime_control.sgml 347 - hunk ./ghc/docs/users_guide/runtime_control.sgml 409 - profiling. For more information, see . + profiling. For more information, see . hunk ./ghc/docs/users_guide/runtime_control.sgml 442 - linkend="cost-centres">), and the sequence represents the + linkend="cost-centres"/>), and the sequence represents the hunk ./ghc/docs/users_guide/runtime_control.sgml 512 - + hunk ./ghc/docs/users_guide/runtime_control.sgml 529 - The message printed if malloc + The message printed if malloc hunk ./ghc/docs/users_guide/separate_compilation.sgml 14 - linkend="hierarchical-modules">); hierarchical modules are an + linkend="hierarchical-modules"/>); hierarchical modules are an hunk ./ghc/docs/users_guide/separate_compilation.sgml 41 - linkend="output-files">). + linkend="output-files"/>). hunk ./ghc/docs/users_guide/separate_compilation.sgml 67 - linkend="hi-options">). + linkend="hi-options"/>). hunk ./ghc/docs/users_guide/separate_compilation.sgml 124 - using the strategy specified in . + using the strategy specified in . hunk ./ghc/docs/users_guide/separate_compilation.sgml 206 - packages (), for details. + packages (), for details. hunk ./ghc/docs/users_guide/separate_compilation.sgml 263 - + hunk ./ghc/docs/users_guide/separate_compilation.sgml 265 - + hunk ./ghc/docs/users_guide/separate_compilation.sgml 338 - interface files (see ). + interface files (see ). hunk ./ghc/docs/users_guide/separate_compilation.sgml 349 - - ghc ... + + ghc ... hunk ./ghc/docs/users_guide/separate_compilation.sgml 352 - - ghc ... -osuf prof.o -hisuf prof.hi -prof -auto-all + + ghc ... -osuf prof.o -hisuf prof.hi -prof -auto-all hunk ./ghc/docs/users_guide/separate_compilation.sgml 426 - linkend="temp-files">). Running GHC with + linkend="temp-files"/>). Running GHC with hunk ./ghc/docs/users_guide/separate_compilation.sgml 451 - <dir>-tmpdir - <dir> option option to specify + <dir>-tmpdir + <dir> option option to specify hunk ./ghc/docs/users_guide/separate_compilation.sgml 457 - Alternatively, use your TMPDIR - environment variable.TMPDIR - environment variable Set it to the + Alternatively, use your TMPDIR + environment variable.TMPDIR + environment variable Set it to the hunk ./ghc/docs/users_guide/separate_compilation.sgml 462 - TMPDIR variable as well. + TMPDIR variable as well. hunk ./ghc/docs/users_guide/separate_compilation.sgml 465 - DEFAULT_TMPDIR make variable when + DEFAULT_TMPDIR make variable when hunk ./ghc/docs/users_guide/separate_compilation.sgml 467 - TMPDIR again. (see the build + TMPDIR again. (see the build hunk ./ghc/docs/users_guide/separate_compilation.sgml 474 - + hunk ./ghc/docs/users_guide/separate_compilation.sgml 592 - done (though the details have changed quite a bit). Ask him if you want a + done (though the details have changed quite a bit). Ask him if you want a hunk ./ghc/docs/users_guide/separate_compilation.sgml 607 - + hunk ./ghc/docs/users_guide/separate_compilation.sgml 633 - + hunk ./ghc/docs/users_guide/separate_compilation.sgml 640 - + hunk ./ghc/docs/users_guide/separate_compilation.sgml 643 - + hunk ./ghc/docs/users_guide/separate_compilation.sgml 657 - + hunk ./ghc/docs/users_guide/separate_compilation.sgml 659 - + hunk ./ghc/docs/users_guide/separate_compilation.sgml 680 - + hunk ./ghc/docs/users_guide/separate_compilation.sgml 683 - + hunk ./ghc/docs/users_guide/separate_compilation.sgml 719 - (See for details of + (See for details of hunk ./ghc/docs/users_guide/separate_compilation.sgml 876 - + hunk ./ghc/docs/users_guide/separate_compilation.sgml 894 - + hunk ./ghc/docs/users_guide/separate_compilation.sgml 909 - + hunk ./ghc/docs/users_guide/separate_compilation.sgml 911 - + hunk ./ghc/docs/users_guide/separate_compilation.sgml 923 - + hunk ./ghc/docs/users_guide/separate_compilation.sgml 926 - + hunk ./ghc/docs/users_guide/separate_compilation.sgml 959 - + hunk ./ghc/docs/users_guide/separate_compilation.sgml 962 - + hunk ./ghc/docs/users_guide/separate_compilation.sgml 964 - this would declare TA to have no constructors (a GHC extension: see ), + this would declare TA to have no constructors (a GHC extension: see ), hunk ./ghc/docs/users_guide/separate_compilation.sgml 979 - if they are not '*'. (You can give explicit kinds in source files too (), + if they are not '*'. (You can give explicit kinds in source files too (), hunk ./ghc/docs/users_guide/separate_compilation.sgml 990 - not the signature for f, since - f isn't used by B. + not the signature for f, since + f isn't used by B. hunk ./ghc/docs/users_guide/separate_compilation.sgml 1009 - + hunk ./ghc/docs/users_guide/separate_compilation.sgml 1013 - + hunk ./ghc/docs/users_guide/separate_compilation.sgml 1019 - + hunk ./ghc/docs/users_guide/separate_compilation.sgml 1023 - + hunk ./ghc/docs/users_guide/sooner.sgml 46 - option option, e.g.: ghc -c - -O -M1024m Foo.hs. + option option, e.g.: ghc -c + -O -M1024m Foo.hs. hunk ./ghc/docs/users_guide/sooner.sgml 64 - real memory on your machine, and the - machine starts “thrashing,” the party - is over. Compile times will be worse than + real memory on your machine, and the + machine starts “thrashing,” the party + is over. Compile times will be worse than hunk ./ghc/docs/users_guide/sooner.sgml 68 - time command to get a report on how many + time command to get a report on how many hunk ./ghc/docs/users_guide/sooner.sgml 73 - of your machine, don't try to be clever + of your machine, don't try to be clever hunk ./ghc/docs/users_guide/sooner.sgml 87 - compile on a fast machine using - remotely-mounted disks; then link on a + compile on a fast machine using + remotely-mounted disks; then link on a hunk ./ghc/docs/users_guide/sooner.sgml 94 - Don't derive/use Read unnecessarily: + Don't derive/use Read unnecessarily: hunk ./ghc/docs/users_guide/sooner.sgml 138 - (see ). + (see ). hunk ./ghc/docs/users_guide/sooner.sgml 157 - . There is no - substitute for finding where your program's time/space - is really going, as opposed to where you + . There is no + substitute for finding where your program's time/space + is really going, as opposed to where you hunk ./ghc/docs/users_guide/sooner.sgml 163 - improve a program's performance dramatically + improve a program's performance dramatically hunk ./ghc/docs/users_guide/sooner.sgml 170 - Else. You might be able to write a better + Else. You might be able to write a better hunk ./ghc/docs/users_guide/sooner.sgml 241 - your program. See - and . + your program. See + and . hunk ./ghc/docs/users_guide/sooner.sgml 253 - linkend="hi-options">). + linkend="hi-options"/>). hunk ./ghc/docs/users_guide/sooner.sgml 338 - the function's arguments. L is lazy - (bad), S and E are - strict (good), P is - “primitive” (good), U(...) + the function's arguments. L is lazy + (bad), S and E are + strict (good), P is + “primitive” (good), U(...) hunk ./ghc/docs/users_guide/sooner.sgml 343 - A is absent (very good). + A is absent (very good). hunk ./ghc/docs/users_guide/sooner.sgml 346 - U(...) argument, the info inside tells + U(...) argument, the info inside tells hunk ./ghc/docs/users_guide/sooner.sgml 348 - pair, and it says U(AU(LSS)), that + pair, and it says U(AU(LSS)), that hunk ./ghc/docs/users_guide/sooner.sgml 367 - See . + See . hunk ./ghc/docs/users_guide/sooner.sgml 378 - unused (perhaps because of unfolding + unused (perhaps because of unfolding hunk ./ghc/docs/users_guide/sooner.sgml 416 - linkend="options-f">), a strict field can be unpacked or + linkend="options-f"/>), a strict field can be unpacked or hunk ./ghc/docs/users_guide/sooner.sgml 436 - When you are really desperate for + When you are really desperate for hunk ./ghc/docs/users_guide/sooner.sgml 438 - bits.” Please see for + bits.” Please see for hunk ./ghc/docs/users_guide/sooner.sgml 455 - describes the foreign function + describes the foreign function hunk ./ghc/docs/users_guide/sooner.sgml 477 - idea is if you have a lot of them, say + idea is if you have a lot of them, say hunk ./ghc/docs/users_guide/sooner.sgml 509 - RTS option RTS options (see ). + RTS option RTS options (see ). hunk ./ghc/docs/users_guide/sooner.sgml 527 - + hunk ./ghc/docs/users_guide/sooner.sgml 544 -increase the size of your program, because unfolding +increase the size of your program, because unfolding hunk ./ghc/docs/users_guide/sooner.sgml 549 -Avoid Read. +Avoid Read. hunk ./ghc/docs/users_guide/sooner.sgml 556 - + hunk ./ghc/docs/users_guide/sooner.sgml 573 - RTS option; so… ./a.out +RTS --Sstderr -G1...] + RTS option; so… ./a.out +RTS +-Sstderr -G1...] hunk ./ghc/docs/users_guide/sooner.sgml 580 -Once again, the profiling facilities () are +Once again, the profiling facilities () are hunk ./ghc/docs/users_guide/sooner.sgml 592 - + hunk ./ghc/docs/users_guide/sooner.sgml 594 - + hunk ./ghc/docs/users_guide/ug-book.sgml 1 - -The Glasgow Haskell Compiler User's Guide, Version 6.0 -The GHC Team -
-glasgow-haskell-{bugs,users}-request@haskell.org -
-
+ +The Glasgow Haskell Compiler User's Guide, Version 6.0 +The GHC Team +
+glasgow-haskell-{bugs,users}-request@haskell.org +
+
hunk ./ghc/docs/users_guide/users_guide.sgml 6 - + hunk ./ghc/docs/users_guide/using.sgml 16 - Command-line arguments + command-line arguments hunk ./ghc/docs/users_guide/using.sgml 24 - + hunk ./ghc/docs/users_guide/using.sgml 26 - + hunk ./ghc/docs/users_guide/using.sgml 28 - Command-line arguments are either options or file names. + command-line arguments are either options or file names. hunk ./ghc/docs/users_guide/using.sgml 30 - Command-line options begin with -. + command-line options begin with -. hunk ./ghc/docs/users_guide/using.sgml 41 - - Command line options in source files + + command line options in source files hunk ./ghc/docs/users_guide/using.sgml 56 - + hunk ./ghc/docs/users_guide/using.sgml 60 - + hunk ./ghc/docs/users_guide/using.sgml 89 - :set command. See + :set command. See hunk ./ghc/docs/users_guide/using.sgml 110 - linkend="flag-reference">) lists the status of each flag. + linkend="flag-reference"/>) lists the status of each flag. hunk ./ghc/docs/users_guide/using.sgml 196 - ––interactive + ––interactive hunk ./ghc/docs/users_guide/using.sgml 205 - more detail in . + more detail in . hunk ./ghc/docs/users_guide/using.sgml 211 - ––make + ––make hunk ./ghc/docs/users_guide/using.sgml 223 - linkend="make-mode">. + linkend="make-mode"/>. hunk ./ghc/docs/users_guide/using.sgml 229 - –e expr + –e expr hunk ./ghc/docs/users_guide/using.sgml 237 - on the command line. See for + on the command line. See for hunk ./ghc/docs/users_guide/using.sgml 263 - linkend="options-order">. + linkend="options-order"/>. hunk ./ghc/docs/users_guide/using.sgml 269 - –M + –M hunk ./ghc/docs/users_guide/using.sgml 276 - linkend="sec-makefile-dependencies">. + linkend="sec-makefile-dependencies"/>. hunk ./ghc/docs/users_guide/using.sgml 282 - ––mk-dll + ––mk-dll hunk ./ghc/docs/users_guide/using.sgml 287 - linkend="win32-dlls-create">. + linkend="win32-dlls-create"/>. hunk ./ghc/docs/users_guide/using.sgml 351 - pragma (see ). + pragma (see ). hunk ./ghc/docs/users_guide/using.sgml 368 - linkend="search-path">). + linkend="search-path"/>). hunk ./ghc/docs/users_guide/using.sgml 418 - - - - + + + + hunk ./ghc/docs/users_guide/using.sgml 496 - linkend="options-codegen"> for more details. + linkend="options-codegen"/> for more details. hunk ./ghc/docs/users_guide/using.sgml 500 - flag turns it on. See for more + flag turns it on. See for more hunk ./ghc/docs/users_guide/using.sgml 503 - Note: The option -E - option runs just the pre-processing passes + Note: The option -E + option runs just the pre-processing passes hunk ./ghc/docs/users_guide/using.sgml 514 - help options - verbosity options + help options + verbosity options hunk ./ghc/docs/users_guide/using.sgml 636 - linkend="packages">). + linkend="packages"/>). hunk ./ghc/docs/users_guide/using.sgml 665 - + hunk ./ghc/docs/users_guide/using.sgml 670 - -W option + -W option hunk ./ghc/docs/users_guide/using.sgml 683 - + hunk ./ghc/docs/users_guide/using.sgml 722 - linkend="deprecated-pragma">. + linkend="deprecated-pragma"/>. hunk ./ghc/docs/users_guide/using.sgml 881 - where the last pattern match in f + where the last pattern match in f hunk ./ghc/docs/users_guide/using.sgml 903 - f xs = [y | Just y <- xs] + f xs = [y | Just y <- xs] hunk ./ghc/docs/users_guide/using.sgml 924 - otherwise unconstrained value 1 to be + otherwise unconstrained value 1 to be hunk ./ghc/docs/users_guide/using.sgml 977 - x and y as unused. The + x and y as unused. The hunk ./ghc/docs/users_guide/using.sgml 986 - + hunk ./ghc/docs/users_guide/using.sgml 1162 - linkend="sec-assertions">). This flag is turned on by + linkend="sec-assertions"/>). This flag is turned on by hunk ./ghc/docs/users_guide/using.sgml 1200 - linkend="unpack-pragma">). + linkend="unpack-pragma"/>). hunk ./ghc/docs/users_guide/using.sgml 1217 - + hunk ./ghc/docs/users_guide/using.sgml 1219 - + hunk ./ghc/docs/users_guide/using.sgml 1288 -runtime system. See . +runtime system. See . hunk ./ghc/docs/users_guide/using.sgml 1296 - + hunk ./ghc/docs/users_guide/using.sgml 1298 - -Using Parallel Haskell + +Using parallel Haskell hunk ./ghc/docs/users_guide/using.sgml 1302 -Parallel Haskell—use +parallel Haskell—use hunk ./ghc/docs/users_guide/using.sgml 1307 -(Parallel Virtual Machine, version 3) is installed at your site.] - +(parallel Virtual Machine, version 3) is installed at your site.] + hunk ./ghc/docs/users_guide/using.sgml 1312 - option,-parallel -option both when compiling and -linking. You will probably want to import -Parallel into your Haskell modules. - + option,-parallel +option both when compiling and +linking. You will probably want to import +parallel into your Haskell modules. + hunk ./ghc/docs/users_guide/using.sgml 1321 -, to say how many PVM +, to say how many PVM hunk ./ghc/docs/users_guide/using.sgml 1323 -all relevant RTS options, please see .) +all relevant RTS options, please see .) hunk ./ghc/docs/users_guide/using.sgml 1328 -In truth, running Parallel Haskell programs and getting information +In truth, running parallel Haskell programs and getting information hunk ./ghc/docs/users_guide/using.sgml 1333 - -Dummy's guide to using PVM + +Dummy's guide to using PVM hunk ./ghc/docs/users_guide/using.sgml 1338 -Parallel Haskell—PVM use +parallel Haskell—PVM use hunk ./ghc/docs/users_guide/using.sgml 1343 - + hunk ./ghc/docs/users_guide/using.sgml 1347 - + hunk ./ghc/docs/users_guide/using.sgml 1353 -business; nothing specific to Parallel Haskell. The following paragraphs +business; nothing specific to parallel Haskell. The following paragraphs hunk ./ghc/docs/users_guide/using.sgml 1355 - + hunk ./ghc/docs/users_guide/using.sgml 1357 - + hunk ./ghc/docs/users_guide/using.sgml 1362 - + hunk ./ghc/docs/users_guide/using.sgml 1364 - + hunk ./ghc/docs/users_guide/using.sgml 1366 - + hunk ./ghc/docs/users_guide/using.sgml 1368 - -You use the pvmpvm command command to start PVM on your + +You use the pvmpvm command command to start PVM on your hunk ./ghc/docs/users_guide/using.sgml 1375 - - - - + + + + hunk ./ghc/docs/users_guide/using.sgml 1381 -ControlD +ControlD hunk ./ghc/docs/users_guide/using.sgml 1420 - - - + + + hunk ./ghc/docs/users_guide/using.sgml 1431 - -Parallelism profiles + +parallelism profiles hunk ./ghc/docs/users_guide/using.sgml 1441 -With Parallel Haskell programs, we usually don't care about the +With parallel Haskell programs, we usually don't care about the hunk ./ghc/docs/users_guide/using.sgml 1445 - -Parallelism profiles (à la hbcpp) can be generated with the --qP RTS option (concurrent, parallel) RTS option. The + +parallelism profiles (à la hbcpp) can be generated with the +-qP RTS option (concurrent, parallel) RTS option. The hunk ./ghc/docs/users_guide/using.sgml 1449 -<full-path><program>.gr. These are then munged into a PostScript picture, +<full-path><program>.gr. These are then munged into a PostScript picture, hunk ./ghc/docs/users_guide/using.sgml 1451 -a.out on 8 processors, then view the parallelism profile, do: - +a.out on 8 processors, then view the parallelism profile, do: + hunk ./ghc/docs/users_guide/using.sgml 1454 - + hunk ./ghc/docs/users_guide/using.sgml 1456 - + hunk ./ghc/docs/users_guide/using.sgml 1461 - + hunk ./ghc/docs/users_guide/using.sgml 1463 - + hunk ./ghc/docs/users_guide/using.sgml 1472 - -Other useful info about running parallel programs + +Other useful info about running parallel programs hunk ./ghc/docs/users_guide/using.sgml 1475 - + hunk ./ghc/docs/users_guide/using.sgml 1478 --Sstderr RTS option or , then +-Sstderr RTS option or , then hunk ./ghc/docs/users_guide/using.sgml 1491 - -RTS options for Concurrent/Parallel Haskell +<sect2 id="parallel-rts-opts"> +<title>RTS options for Concurrent/parallel Haskell hunk ./ghc/docs/users_guide/using.sgml 1499 -<indexterm><primary>Parallel Haskell—RTS options</primary></indexterm> +<indexterm><primary>parallel Haskell—RTS options</primary></indexterm> hunk ./ghc/docs/users_guide/using.sgml 1504 -(<XRef LinkEnd="runtime-control">), there are a few options particularly +(<xref linkend="runtime-control"/>), there are a few options particularly hunk ./ghc/docs/users_guide/using.sgml 1509 -<VariableList> +<variablelist> hunk ./ghc/docs/users_guide/using.sgml 1511 -<VarListEntry> -<Term><Option>-qp<N></Option>:</Term> -<ListItem> -<Para> -<IndexTerm><Primary>-qp<N> RTS option</Primary></IndexTerm> -(PARALLEL ONLY) Use <Literal><N></Literal> PVM processors to run this program; +<varlistentry> +<Term><option>-qp<N></option>:</Term> +<listitem> +<para> +<indexterm><primary>-qp<N> RTS option</primary></indexterm> +(paraLLEL ONLY) Use <literal><N></literal> PVM processors to run this program; hunk ./ghc/docs/users_guide/using.sgml 1543 -(PARALLEL ONLY) Produce a quasi-parallel profile of thread activity, -in the file <FIlename><program>.qp</FIlename>. In the style of <command>hbcpp</command>, this profile +(paraLLEL ONLY) Produce a quasi-parallel profile of thread activity, +in the file <filename><program>.qp</filename>. In the style of <command>hbcpp</command>, this profile hunk ./ghc/docs/users_guide/using.sgml 1550 -<Command>hbcpp</Command> profiling tools or if you are context switching at every heap -check (with <Option>-C</Option>). +<command>hbcpp</command> profiling tools or if you are context switching at every heap +check (with <option>-C</option>). hunk ./ghc/docs/users_guide/using.sgml 1553 -</Para> -</ListItem> -</VarListEntry> -<VarListEntry> -<Term><Option>-qt<num></Option>:</Term> -<ListItem> -<Para> -<IndexTerm><Primary>-qt<num> RTS option</Primary></IndexTerm> -(PARALLEL ONLY) Limit the thread pool size, i.e. the number of concurrent -threads per processor to <Literal><num></Literal>. The default is -32. Each thread requires slightly over 1K <Emphasis>words</Emphasis> in +</para> +</listitem> +</varlistentry> +<varlistentry> +<Term><option>-qt<num></option>:</Term> +<listitem> +<para> +<indexterm><primary>-qt<num> RTS option</primary></indexterm> +(paraLLEL ONLY) Limit the thread pool size, i.e. the number of concurrent +threads per processor to <literal><num></literal>. The default is +32. Each thread requires slightly over 1K <emphasis>words</emphasis> in hunk ./ghc/docs/users_guide/using.sgml 1566 -</Para> -</ListItem> -</VarListEntry> +</para> +</listitem> +</varlistentry> hunk ./ghc/docs/users_guide/using.sgml 1570 -<VarListEntry> -<Term><Option>-d</Option>:</Term> -<ListItem> -<Para> -<IndexTerm><Primary>-d RTS option (parallel)</Primary></IndexTerm> -(PARALLEL ONLY) Turn on debugging. It pops up one xterm (or GDB, or -something…) per PVM processor. We use the standard <Command>debugger</Command> +<varlistentry> +<Term><option>-d</option>:</Term> +<listitem> +<para> +<indexterm><primary>-d RTS option (parallel)</primary></indexterm> +(paraLLEL ONLY) Turn on debugging. It pops up one xterm (or GDB, or +something…) per PVM processor. We use the standard <command>debugger</command> hunk ./ghc/docs/users_guide/using.sgml 1578 -<Command>debugger2</Command> script. We include ours in the GHC distribution, -in <Filename>ghc/utils/pvm/</Filename>. -</Para> -</ListItem> -</VarListEntry> +<command>debugger2</command> script. We include ours in the GHC distribution, +in <filename>ghc/utils/pvm/</filename>. +</para> +</listitem> +</varlistentry> hunk ./ghc/docs/users_guide/using.sgml 1584 -<VarListEntry> -<Term><Option>-qe<num></Option>:</Term> -<ListItem> -<Para> -<IndexTerm><Primary>-qe<num> RTS option -(parallel)</Primary></IndexTerm> (PARALLEL ONLY) Limit the spark pool size +<varlistentry> +<Term><option>-qe<num></option>:</Term> +<listitem> +<para> +<indexterm><primary>-qe<num> RTS option +(parallel)</primary></indexterm> (paraLLEL ONLY) Limit the spark pool size hunk ./ghc/docs/users_guide/using.sgml 1591 -<Literal><num></Literal>. The default is 100. A larger number may be +<literal><num></literal>. The default is 100. A larger number may be hunk ./ghc/docs/users_guide/using.sgml 1594 -</Para> -</ListItem> -</VarListEntry> -<VarListEntry> -<Term><Option>-qQ<num></Option>:</Term> -<ListItem> -<Para> -<IndexTerm><Primary>-qQ<num> RTS option (parallel)</Primary></IndexTerm> -(PARALLEL ONLY) Set the size of packets transmitted between processors -to <Literal><num></Literal>. The default is 1024 words. A larger number may be +</para> +</listitem> +</varlistentry> +<varlistentry> +<Term><option>-qQ<num></option>:</Term> +<listitem> +<para> +<indexterm><primary>-qQ<num> RTS option (parallel)</primary></indexterm> +(paraLLEL ONLY) Set the size of packets transmitted between processors +to <literal><num></literal>. The default is 1024 words. A larger number may be hunk ./ghc/docs/users_guide/using.sgml 1606 -</Para> -</ListItem> -</VarListEntry> -<VarListEntry> -<Term><Option>-qh<num></Option>:</Term> -<ListItem> -<Para> -<IndexTerm><Primary>-qh<num> RTS option (parallel)</Primary></IndexTerm> -(PARALLEL ONLY) Select a packing scheme. Set the number of non-root thunks to pack in one packet to +</para> +</listitem> +</varlistentry> +<varlistentry> +<Term><option>-qh<num></option>:</Term> +<listitem> +<para> +<indexterm><primary>-qh<num> RTS option (parallel)</primary></indexterm> +(paraLLEL ONLY) Select a packing scheme. Set the number of non-root thunks to pack in one packet to hunk ./ghc/docs/users_guide/using.sgml 1621 -</Para> -</ListItem> -</VarListEntry> -<VarListEntry> -<Term><Option>-qg<num></Option>:</Term> -<ListItem> -<Para> -<IndexTerm><Primary>-qg<num> RTS option -(parallel)</Primary></IndexTerm> (PARALLEL ONLY) Select a globalisation +</para> +</listitem> +</varlistentry> +<varlistentry> +<Term><option>-qg<num></option>:</Term> +<listitem> +<para> +<indexterm><primary>-qg<num> RTS option +(parallel)</primary></indexterm> (paraLLEL ONLY) Select a globalisation hunk ./ghc/docs/users_guide/using.sgml 1639 -</Para> -</ListItem> -</VarListEntry> -</VariableList> +</para> +</listitem> +</varlistentry> +</variablelist> hunk ./ghc/docs/users_guide/using.sgml 1647 -</Sect1> +</sect1> hunk ./ghc/docs/users_guide/using.sgml 1683 -<Screen> +<screen> hunk ./ghc/docs/users_guide/using.sgml 1687 -</Screen> +</screen> hunk ./ghc/docs/users_guide/using.sgml 1708 - tools. The Core format is formally described in <ulink url="http://www.haskell.org/ghc/docs/papers/core.ps.gz" + tools. The Core format is formally described in <ulink url="http://www.haskell.org/ghc/docs/papers/core.ps.gz"> hunk ./ghc/docs/users_guide/using.sgml 1715 - for debugging purposes (<xref linkend="options-debugging">).</para> + for debugging purposes (<xref linkend="options-debugging"/>).</para> hunk ./ghc/docs/users_guide/using.sgml 1719 - linkend="pragmas">).</para> + linkend="pragmas"/>).</para> hunk ./ghc/docs/users_guide/using.sgml 1744 -</Chapter> +</chapter> hunk ./ghc/docs/users_guide/utils.sgml 95 - [for C], and <Command>perltags</Command> [for You + [for C], and <command>perltags</command> [for You hunk ./ghc/docs/users_guide/utils.sgml 97 - Denis Howe's <Command>fptags</Command> [for Haskell, + Denis Howe's <command>fptags</command> [for Haskell, hunk ./ghc/docs/users_guide/utils.sgml 113 - <Command>happy</Command>.<IndexTerm><Primary>happy parser - generator</Primary></IndexTerm> <command>Happy</command> is to + <command>happy</command>.<indexterm><primary>happy parser + generator</primary></indexterm> <command>Happy</command> is to hunk ./ghc/docs/users_guide/utils.sgml 117 - <para>You can get <Command>happy</Command> from <ulink + <para>You can get <command>happy</command> from <ulink hunk ./ghc/docs/users_guide/utils.sgml 128 - <title>Pretty-printing Haskell: <Command>pphs</Command> + Pretty-printing Haskell: <command>pphs</command> hunk ./ghc/docs/users_guide/utils.sgml 133 - pphs,pphspretty-printing - Haskell a utility to pretty-print Haskell + pphs,pphspretty-printing + Haskell a utility to pretty-print Haskell hunk ./ghc/docs/users_guide/utils.sgml 180 - Command line syntax + command line syntax hunk ./ghc/docs/users_guide/utils.sgml 291 - + hunk ./ghc/docs/users_guide/utils.sgml 400 - ). + ). hunk ./ghc/docs/users_guide/win32-dlls.sgml 115 - Don't use absolute paths in make, configure & co if there is any chance + Don't use absolute paths in make, configure & co if there is any chance hunk ./ghc/docs/users_guide/win32-dlls.sgml 158 -Building and using Win32 DLLs - +Building and using Win32 DLLs + hunk ./ghc/docs/users_guide/win32-dlls.sgml 161 - -Dynamic link libraries, Win32 -DLLs, Win32 + +Dynamic link libraries, Win32 +DLLs, Win32 hunk ./ghc/docs/users_guide/win32-dlls.sgml 167 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 169 - -Until recently, strip didn't work reliably on DLLs, so you + +Until recently, strip didn't work reliably on DLLs, so you hunk ./ghc/docs/users_guide/win32-dlls.sgml 174 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 177 - -Linking with DLLs - + +Linking with DLLs hunk ./ghc/docs/users_guide/win32-dlls.sgml 180 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 185 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 187 - - + + hunk ./ghc/docs/users_guide/win32-dlls.sgml 200 - - + + hunk ./ghc/docs/users_guide/win32-dlls.sgml 203 - -will give you a binary as before, but the main.exe + +will give you a binary as before, but the main.exe hunk ./ghc/docs/users_guide/win32-dlls.sgml 207 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 209 - -4K for a "hello, world" application—not bad, huh? :-) - + +4K for a "hello, world" application—not bad, huh? :-) + hunk ./ghc/docs/users_guide/win32-dlls.sgml 213 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 215 - -Not linking with DLLs -<IndexTerm><Primary>-static option (Win32)</Primary></IndexTerm> + +Not linking with DLLs +<indexterm><primary>-static option (Win32)</primary></indexterm> hunk ./ghc/docs/users_guide/win32-dlls.sgml 219 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 221 -ghc-compiled DLLs, use the option to link in +ghc-compiled DLLs, use the option to link in hunk ./ghc/docs/users_guide/win32-dlls.sgml 223 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 225 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 227 - and not, so you have to use the + and not, so you have to use the hunk ./ghc/docs/users_guide/win32-dlls.sgml 229 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 231 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 233 - -Creating a DLL - + +Creating a DLL hunk ./ghc/docs/users_guide/win32-dlls.sgml 236 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 242 -Creating a Win32 DLL -––mk-dll +Creating a Win32 DLL +––mk-dll hunk ./ghc/docs/users_guide/win32-dlls.sgml 247 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 249 - - + + hunk ./ghc/docs/users_guide/win32-dlls.sgml 252 - - + + hunk ./ghc/docs/users_guide/win32-dlls.sgml 255 - -By feeding the ghc compiler driver the option , it + +By feeding the ghc compiler driver the option , it hunk ./ghc/docs/users_guide/win32-dlls.sgml 260 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 262 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 264 -use the when compiling up your Haskell code and +use the when compiling up your Haskell code and hunk ./ghc/docs/users_guide/win32-dlls.sgml 266 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 268 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 270 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 272 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 274 - - - -Since DLLs correspond to packages (see ) you need -to use when compiling modules that + + + +Since DLLs correspond to packages (see ) you need +to use when compiling modules that hunk ./ghc/docs/users_guide/win32-dlls.sgml 282 -as startupHaskell needs to be able to call its -initialisation function, and only takes one such argument (see ). Hence the modules +as startupHaskell needs to be able to call its +initialisation function, and only takes one such argument (see ). Hence the modules hunk ./ghc/docs/users_guide/win32-dlls.sgml 286 - - + + hunk ./ghc/docs/users_guide/win32-dlls.sgml 289 - - + + hunk ./ghc/docs/users_guide/win32-dlls.sgml 292 -the DLL when using . Should you want to constrain -this, you can specify the module definition file to use +the DLL when using . Should you want to constrain +this, you can specify the module definition file to use hunk ./ghc/docs/users_guide/win32-dlls.sgml 296 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 298 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 304 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 310 - - - + + + hunk ./ghc/docs/users_guide/win32-dlls.sgml 314 - - -In addition to creating a DLL, the option also + + +In addition to creating a DLL, the option also hunk ./ghc/docs/users_guide/win32-dlls.sgml 320 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 322 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 326 -libHSfoo.a and -libHSfoo_imp.a. +libHSfoo.a and +libHSfoo_imp.a. hunk ./ghc/docs/users_guide/win32-dlls.sgml 330 -will rewrite occurrence of on the command line to -. By doing this for you, switching from +will rewrite occurrence of on the command line to +. By doing this for you, switching from hunk ./ghc/docs/users_guide/win32-dlls.sgml 333 - to your command line. + to your command line. hunk ./ghc/docs/users_guide/win32-dlls.sgml 335 - - - - + + + + hunk ./ghc/docs/users_guide/win32-dlls.sgml 340 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 343 - -Making DLLs to be called from other languages + +Making DLLs to be called from other languages hunk ./ghc/docs/users_guide/win32-dlls.sgml 346 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 350 -know. The dirty details are in the Foreign Function -Interface definition, but it can be tricky to work out how to +know. The dirty details are in the Foreign Function +Interface definition, but it can be tricky to work out how to hunk ./ghc/docs/users_guide/win32-dlls.sgml 354 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 356 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 358 - - -Use foreign export declarations to export the Haskell + + +Use foreign export declarations to export the Haskell hunk ./ghc/docs/users_guide/win32-dlls.sgml 363 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 370 - - - + + + hunk ./ghc/docs/users_guide/win32-dlls.sgml 374 - - + + hunk ./ghc/docs/users_guide/win32-dlls.sgml 378 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 380 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 383 - - + + hunk ./ghc/docs/users_guide/win32-dlls.sgml 386 - - -compile up a DllMain() that starts up the Haskell + + +compile up a DllMain() that starts up the Haskell hunk ./ghc/docs/users_guide/win32-dlls.sgml 391 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 414 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 416 -Here, Adder is the name of the root module in the module +Here, Adder is the name of the root module in the module hunk ./ghc/docs/users_guide/win32-dlls.sgml 422 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 424 - - - + + + hunk ./ghc/docs/users_guide/win32-dlls.sgml 428 - - + + hunk ./ghc/docs/users_guide/win32-dlls.sgml 432 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 434 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 436 - - + + hunk ./ghc/docs/users_guide/win32-dlls.sgml 439 - - -Start using adder from VBA-––here's how I would -Declare it: + + +Start using adder from VBA-––here's how I would +Declare it: hunk ./ghc/docs/users_guide/win32-dlls.sgml 444 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 447 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 451 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 453 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 455 -suffices to add to the commands used to compile up +suffices to add to the commands used to compile up hunk ./ghc/docs/users_guide/win32-dlls.sgml 457 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 459 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 461 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 463 - + hunk ./ghc/docs/users_guide/win32-dlls.sgml 466 - + }