From df87e59ebe63776ef33b2587b50930baf9614931 Mon Sep 17 00:00:00 2001 From: ross Date: Sun, 3 Oct 2004 16:17:15 +0000 Subject: [PATCH] [project @ 2004-10-03 16:17:08 by ross] spelling --- ghc/docs/users_guide/5-04-notes.xml | 2 +- ghc/docs/users_guide/bugs.xml | 2 +- ghc/docs/users_guide/debugging.xml | 4 +-- ghc/docs/users_guide/faq.xml | 6 ++-- ghc/docs/users_guide/ffi-chap.xml | 12 ++++---- ghc/docs/users_guide/flags.xml | 2 +- ghc/docs/users_guide/ghci.xml | 6 ++-- ghc/docs/users_guide/glasgow_exts.xml | 40 ++++++++++++------------- ghc/docs/users_guide/installing.xml | 2 +- ghc/docs/users_guide/profiling.xml | 6 ++-- ghc/docs/users_guide/runtime_control.xml | 2 +- ghc/docs/users_guide/separate_compilation.xml | 6 ++-- ghc/docs/users_guide/using.xml | 8 ++--- ghc/docs/users_guide/utils.xml | 6 ++-- 14 files changed, 52 insertions(+), 52 deletions(-) diff --git a/ghc/docs/users_guide/5-04-notes.xml b/ghc/docs/users_guide/5-04-notes.xml index 76ee728..91b8dcf 100644 --- a/ghc/docs/users_guide/5-04-notes.xml +++ b/ghc/docs/users_guide/5-04-notes.xml @@ -144,7 +144,7 @@ New commands: :browse, :set args, :set prog, :show - binadings, and :show modules (see + bindings, and :show modules (see ). diff --git a/ghc/docs/users_guide/bugs.xml b/ghc/docs/users_guide/bugs.xml index 76ab87d..6a07c90 100644 --- a/ghc/docs/users_guide/bugs.xml +++ b/ghc/docs/users_guide/bugs.xml @@ -103,7 +103,7 @@ main = print (array (1,1) [(1,2), (1,3)]) -GHC's implemetation of array takes the value of an +GHC's implementation of array takes the value of an array slot from the last (index,value) pair in the list, and does no checking for duplicates. The reason for this is efficiency, pure and simple. diff --git a/ghc/docs/users_guide/debugging.xml b/ghc/docs/users_guide/debugging.xml index ff8d4f8..a325389 100644 --- a/ghc/docs/users_guide/debugging.xml +++ b/ghc/docs/users_guide/debugging.xml @@ -120,7 +120,7 @@ - simplifer output (Core-to-Core passes) + simplifier output (Core-to-Core passes) @@ -504,7 +504,7 @@ Main.skip2{-r1L6-} = fromInt.t4GS = (fromInt{-r3JX-} _4) d.Num.t4Gt --# The `+' class method (Unique: r3JH) selects the addition code ---# from a `Num' dictionary (now an explicit lamba'd argument). +--# from a `Num' dictionary (now an explicit lambda'd argument). --# Because Core is 2nd-order lambda-calculus, type applications --# and lambdas (/\) are explicit. So `+' is first applied to a --# type (`_4'), then to a dictionary, yielding the actual addition diff --git a/ghc/docs/users_guide/faq.xml b/ghc/docs/users_guide/faq.xml index 2f1ba40..ecafe4b 100644 --- a/ghc/docs/users_guide/faq.xml +++ b/ghc/docs/users_guide/faq.xml @@ -30,7 +30,7 @@ - Both ways require you to bootrap from intermediate + Both ways require you to bootstrap from intermediate HC files: these are the stylised C files generated by GHC when it compiles Haskell source. Basically the idea is to take the HC files for GHC itself to the target @@ -225,7 +225,7 @@ descriptor (gotten from Posix.handleToFd) before the first read, but this doesn't work on FreeBSD (although rumour has it that recent versions of FreeBSD - changed the behavour to match other OSs). A workaround for + changed the behaviour to match other OSs). A workaround for all systems is to open the FIFO for writing yourself, before (or at the same time as) opening it for reading. @@ -336,7 +336,7 @@ details. - If I explicitely set the buffering on a Handle to + If I explicitly set the buffering on a Handle to "NoBuffering" I'm not able to enter EOF by typing "Ctrl-D". diff --git a/ghc/docs/users_guide/ffi-chap.xml b/ghc/docs/users_guide/ffi-chap.xml index 789a6a1..a6dccb3 100644 --- a/ghc/docs/users_guide/ffi-chap.xml +++ b/ghc/docs/users_guide/ffi-chap.xml @@ -108,7 +108,7 @@ extern HsInt foo(HsInt a0); main(), which arranges to invoke Main.main in the Haskell program. However, you might want to link some Haskell code into a program which - has a main function written in another languagem, say C. In + has a main function written in another language, say C. In order to do this, you have to initialize the Haskell runtime system explicitly. @@ -280,7 +280,7 @@ declaration itself: When compiling this module, GHC will generate a C file that includes the specified . However, GHC -disables cross-module inlinding for such foreign +disables cross-module inlining for such foreign calls, because it doesn't transport the information across module boundaries. (There is no fundamental reason for this; it was just tiresome to implement. The wrapper, which unboxes the arguments @@ -327,7 +327,7 @@ to be inlined across modules, use the command-line and package-configuration Useful for short-term allocation when the allocation is intended to scope over a given IO - compuatation. This kind of allocation is commonly used + computation. This kind of allocation is commonly used when marshalling data to and from FFI functions. In GHC, alloca is implemented @@ -366,7 +366,7 @@ to be inlined across modules, use the command-line and package-configuration If all else fails, then you need to resort to Foreign.malloc and Foreign.free. These are just wrappers - around the C funcitons of the same name, and their + around the C functions of the same name, and their efficiency will depend ultimately on the implementations of these functions in your platform's C library. We usually find malloc and @@ -376,14 +376,14 @@ to be inlined across modules, use the command-line and package-configuration - Foreign.Marhsal.Pool + Foreign.Marshal.Pool Pools are currently implemented using malloc/free, so while they might be a more convenient way to structure your memory allocation than using one of the other forms of allocation, they won't be any more efficient. We do plan to provide an - improved-performance implementaiton of Pools in the + improved-performance implementation of Pools in the future, however. diff --git a/ghc/docs/users_guide/flags.xml b/ghc/docs/users_guide/flags.xml index 895e993..9c0fa29 100644 --- a/ghc/docs/users_guide/flags.xml +++ b/ghc/docs/users_guide/flags.xml @@ -1149,7 +1149,7 @@ - Don't asssume this program contains main + Don't assume this program contains main static - diff --git a/ghc/docs/users_guide/ghci.xml b/ghc/docs/users_guide/ghci.xml index fcdf986..8914901 100644 --- a/ghc/docs/users_guide/ghci.xml +++ b/ghc/docs/users_guide/ghci.xml @@ -10,7 +10,7 @@ is GHC's interactive environment, in which Haskell expressions can be interactively evaluated and programs can be interpreted. If - you're famililar with HugsHugs + you're familiar with HugsHugs , then you'll be right at home with GHCi. However, GHCi also has support for interactively loading compiled code, as well as supporting allexcept foreign export, at the moment @@ -668,7 +668,7 @@ Wed Mar 14 12:23:13 GMT 2001 - + Invoking GHCi invokingGHCi @@ -765,7 +765,7 @@ $ ghci -lm the standard library search path for your system, - which on some systems may be overriden by setting the + which on some systems may be overridden by setting the LD_LIBRARY_PATH environment variable. diff --git a/ghc/docs/users_guide/glasgow_exts.xml b/ghc/docs/users_guide/glasgow_exts.xml index 9733a6f..a3e1d01 100644 --- a/ghc/docs/users_guide/glasgow_exts.xml +++ b/ghc/docs/users_guide/glasgow_exts.xml @@ -619,7 +619,7 @@ clunky env var1 var1 -The semantics should be clear enough. The qualifers are matched in order. +The semantics should be clear enough. The qualifiers are matched in order. For a <- qualifier, which I call a pattern guard, the right hand side is evaluated and matched against the pattern on the left. If the match fails then the whole guard fails and the next equation is @@ -957,7 +957,7 @@ like expressions. More specifically: Liberalised type synonyms -Type synonmys are like macros at the type level, and +Type synonyms are like macros at the type level, and GHC does validity checking on types only after expanding type synonyms. That means that GHC can be very much more liberal about type synonyms than Haskell 98: @@ -1006,7 +1006,7 @@ You can apply a type synonym to a partially applied type synonym: foo :: Generic Id [] -After epxanding the synonym, foo has the legal (in GHC) type: +After expanding the synonym, foo has the legal (in GHC) type: foo :: forall x. x -> [x] @@ -1458,7 +1458,7 @@ be acyclic. So these class declarations are OK: All of the class type variables must be reachable (in the sense mentioned in ) -from the free varibles of each method type +from the free variables of each method type . For example: @@ -1589,7 +1589,7 @@ get any more information about tv. Note that the reachability condition is weaker than saying that a is -functionally dependendent on a type variable free in +functionally dependent on a type variable free in type (see ). The reason for this is there might be a "hidden" dependency, in a superclass perhaps. So @@ -1775,7 +1775,7 @@ GHC is also conservative about committing to an overlapping instance. For examp f x = op x From the RHS of f we get the constraint C [b]. But -GHC does not commit to the second instance declaration, because in a paricular +GHC does not commit to the second instance declaration, because in a particular call of f, b might be instantiate to Int, so the first instance declaration would be appropriate. So GHC rejects the program. If you add GHC will instead silently pick the second instance, without complaining about @@ -1947,7 +1947,7 @@ allowing these idioms interesting idioms. Implicit parameters - Implicit paramters are implemented as described in + Implicit parameters are implemented as described in "Implicit parameters: dynamic scoping with static types", J Lewis, MB Shields, E Meijer, J Launchbury, 27th ACM Symposium on Principles of Programming Languages (POPL'00), @@ -2118,7 +2118,7 @@ problem that monads seem over-kill for certain sorts of problem, notably: distributing a supply of unique names - distributing a suppply of random numbers + distributing a supply of random numbers distributing an oracle (as in QuickCheck) @@ -2405,7 +2405,7 @@ is implicitly added by Haskell. The functions f2 and g2 have rank-2 types; -the forall is on the left of a function arrrow. As g2 +the forall is on the left of a function arrow. As g2 shows, the polymorphic type on the left of the function arrow can be overloaded. @@ -2578,7 +2578,7 @@ matching. Type inference -In general, type inference for arbitrary-rank types is undecideable. +In general, type inference for arbitrary-rank types is undecidable. GHC uses an algorithm proposed by Odersky and Laufer ("Putting type annotations to work", POPL'96) to get a decidable algorithm by requiring some help from the programmer. We do not yet have a formal specification of "some help" but the rule is this: @@ -2907,7 +2907,7 @@ A pattern type signature can occur in any pattern. For example: A pattern type signature can be on an arbitrary sub-pattern, not -ust on a variable: +just on a variable: @@ -3323,7 +3323,7 @@ These and many other examples are given in papers by Hongwei Xi, and Tim Sheard. Data type declarations have a 'where' form, as exemplified above. The type signature of -each constructor is independent, and is implicitly univerally quantified as usual. Unlike a normal +each constructor is independent, and is implicitly universally quantified as usual. Unlike a normal Haskell data type declaration, the type variable(s) in the "data Term a where" header have no scope. Indeed, one can write a kind signature instead: @@ -4211,7 +4211,7 @@ Assertion failures can be caught, see the documentation for the {-# DEPRECATED f, C, T "Don't use these" #-} When you compile any module that imports and uses any - of the specifed entities, GHC will print the specified + of the specified entities, GHC will print the specified message. @@ -4267,7 +4267,7 @@ key_function :: Int -> String -> (Bool, Double) The normal unfolding machinery will then be very keen to inline it. - Syntactially, an INLINE pragma for a + Syntactically, an INLINE pragma for a function can be put anywhere its type signature could be put. @@ -4317,7 +4317,7 @@ key_function :: Int -> String -> (Bool, Double) number; the phase number decreases towards zero. If you use you'll see the sequence of phase numbers for successive runs of the - simpifier. In an INLINE pragma you can optionally specify a + simplifier. In an INLINE pragma you can optionally specify a phase number, thus: @@ -4562,7 +4562,7 @@ data S = S {-# UNPACK #-} !Int {-# UNPACK #-} !Int Rewrite rules -<indexterm><primary>RULES pagma</primary></indexterm> +<indexterm><primary>RULES pragma</primary></indexterm> <indexterm><primary>pragma, RULES</primary></indexterm> <indexterm><primary>rewrite rules</primary></indexterm> @@ -4728,7 +4728,7 @@ same type. GHC makes absolutely no attempt to verify that the LHS and RHS -of a rule have the same meaning. That is undecideable in general, and +of a rule have the same meaning. That is undecidable in general, and infeasible in most interesting cases. The responsibility is entirely the programmer's! @@ -4760,7 +4760,7 @@ This rule will cause the compiler to go into an infinite loop. for matching a rule LHS with an expression. It seeks a substitution which makes the LHS and expression syntactically equal modulo alpha conversion. The pattern (rule), but not the expression, is eta-expanded if -necessary. (Eta-expanding the epression can lead to laziness bugs.) +necessary. (Eta-expanding the expression can lead to laziness bugs.) But not beta conversion (that's called higher-order matching). @@ -5126,7 +5126,7 @@ If you add you get a more detailed listing. - The defintion of (say) build in GHC/Base.lhs looks llike this: + The definition of (say) build in GHC/Base.lhs looks llike this: build :: forall a. (forall b. (a -> b -> b) -> b -> b) -> [a] @@ -5175,7 +5175,7 @@ program even if fusion doesn't happen. More rules in GHC/List.lhs - Sematically, this is equivalent to: + Semantically, this is equivalent to: g x = show x diff --git a/ghc/docs/users_guide/installing.xml b/ghc/docs/users_guide/installing.xml index b3f8169..97d3293 100644 --- a/ghc/docs/users_guide/installing.xml +++ b/ghc/docs/users_guide/installing.xml @@ -633,7 +633,7 @@ the links in "Start/Programs/Glasgow Haskell Compiler" if you do this.) It is OK to put GHC tree in a directory whose path involves spaces. However, don't do this if you use want to use GHC with the Cygwin tools, -because Cygwin can get confused when this happpens. +because Cygwin can get confused when this happens. We havn't quite got to the bottom of this, but so far as we know it's not a problem with GHC itself. Nevertheless, just to keep life simple we usually put GHC in a place with a space-free path. diff --git a/ghc/docs/users_guide/profiling.xml b/ghc/docs/users_guide/profiling.xml index 52fc8d8..3c75ad0 100644 --- a/ghc/docs/users_guide/profiling.xml +++ b/ghc/docs/users_guide/profiling.xml @@ -258,7 +258,7 @@ MAIN MAIN 0 0.0 0.0 100.0 100.0 {-# SCC "name" #-} <expression> - where "name" is an aribrary string, + where "name" is an arbitrary string, that will become the name of your cost centre as it appears in the profiling output, and <expression> is any Haskell @@ -490,7 +490,7 @@ x = nfib 25 over time. This is useful for detecting the causes of space leaks, when your program holds on to more memory at run-time that it needs to. Space leaks lead to - longer run-times due to heavy garbage collector ativity, and may + longer run-times due to heavy garbage collector activity, and may even cause the program to run out of memory altogether. To generate a heap profile from your program: @@ -809,7 +809,7 @@ x = nfib 25 The definition of retainers is designed to reflect a common cause of space leaks: a large structure is retained by an unevaluated computation, and will be released once the - compuation is forced. A good example is looking up a value in + computation is forced. A good example is looking up a value in a finite map, where unless the lookup is forced in a timely manner the unevaluated lookup will cause the whole mapping to be retained. These kind of space leaks can often be diff --git a/ghc/docs/users_guide/runtime_control.xml b/ghc/docs/users_guide/runtime_control.xml index ee62855..837d99f 100644 --- a/ghc/docs/users_guide/runtime_control.xml +++ b/ghc/docs/users_guide/runtime_control.xml @@ -80,7 +80,7 @@ RTS options taken from the GHCRTS environment - variable can be overriden by options given on the command + variable can be overridden by options given on the command line. diff --git a/ghc/docs/users_guide/separate_compilation.xml b/ghc/docs/users_guide/separate_compilation.xml index 7fe1a1a..8329df4 100644 --- a/ghc/docs/users_guide/separate_compilation.xml +++ b/ghc/docs/users_guide/separate_compilation.xml @@ -136,7 +136,7 @@ will not get confused. In batch compilation mode, the name of the object file can - also be overriden using the option, and the + also be overridden using the option, and the name of the interface file can be specified directly using the option. @@ -597,7 +597,7 @@ $ ghc -c parse/Foo.hs parse/Bar.hs gurgle/Bumble.hs -odir `arch` it used when it last compiled the file. If the source file's modification date is earlier than the .o file's date (i.e. the source hasn't changed since the file was - last compiled), and the reompilation checking is on, GHC will be + last compiled), and the recompilation checking is on, GHC will be clever. It compares the version numbers on the things it needs this time with the version numbers on the things it needed last time (gleaned from the interface file of the module being @@ -986,7 +986,7 @@ module A where In a source program this would declare TA to have no constructors (a GHC extension: see ), - but in an hi-boot file it means "I don't know or care what the construtors are". + but in an hi-boot file it means "I don't know or care what the constructors are". This is the most common form of data type declaration, because it's easy to get right. You can also write out the constructors but, if you do so, you must write diff --git a/ghc/docs/users_guide/using.xml b/ghc/docs/users_guide/using.xml index 2ddc60b..f9a9fce 100644 --- a/ghc/docs/users_guide/using.xml +++ b/ghc/docs/users_guide/using.xml @@ -333,7 +333,7 @@ ghc ––make Main.hs GHC doesn't have to be restarted for each compilation, which means it can cache information between compilations. - Compiling a muli-module program with ghc + Compiling a multi-module program with ghc ––make can be up to twice as fast as running ghc individually on each source file. @@ -358,7 +358,7 @@ ghc ––make Main.hs pragma (see ). If the program needs to be linked with additional objects - (say, some auxilliary C code), then the object files can be + (say, some auxiliary C code), then the object files can be given on the command line and GHC will include them when linking the executable. @@ -1710,7 +1710,7 @@ and maintaining internal tables of global addresses. only) Means to pass the like-named option to GCC; it says to use the Version 8 SPARC instructions, notably integer multiply and divide. The - similiar GCC options for SPARC also + similar GCC options for SPARC also work, actually. @@ -1779,7 +1779,7 @@ statements or clauses. GHC can also read in External Core files as source; just give the .hcr file on the command line, instead of the .hs or .lhs Haskell source. -A current infelicity is that you need to give teh -fglasgow-exts flag too, because +A current infelicity is that you need to give the -fglasgow-exts flag too, because ordinary Haskell 98, when translated to External Core, uses things like rank-2 types. diff --git a/ghc/docs/users_guide/utils.xml b/ghc/docs/users_guide/utils.xml index da8e184..6c82f6b 100644 --- a/ghc/docs/users_guide/utils.xml +++ b/ghc/docs/users_guide/utils.xml @@ -6,7 +6,7 @@ This section describes other program(s) which we distribute, that help with the Great Haskell Programming Task. - + Ctags and Etags for Haskell: <command>hasktags</command> @@ -34,7 +34,7 @@ find -name \*.\*hs | xargs hasktags This will find all haskell source files in the current directory and below, and create tags files indexing them in the current directory. hasktags is a simple program that uses simple - parsing rules to find definitions of functions, constructors, and types. It isn't guranteed to find everything, and will sometimes create false index entries, but it usually gets the job done fairly well. In particular, at present, functions are only indexed if a type signature is given for them. + parsing rules to find definitions of functions, constructors, and types. It isn't guaranteed to find everything, and will sometimes create false index entries, but it usually gets the job done fairly well. In particular, at present, functions are only indexed if a type signature is given for them. Before hasktags, there used to be fptags and hstags, which did essentially the same job, however neither of these seem to be maintained any more. @@ -547,7 +547,7 @@ tags: source. They are useful for making a #let-like macro whose expansion uses other #let macros. Plain #let prepends hsc_ - to the macro name and wraps the defininition in a + to the macro name and wraps the definition in a printf call. -- 1.7.10.4