Serge D. Mechveliani | 1 Jun 2005 12:33
Picon

make html

Dear GHC supporters,

I have made  ghc-6.4  from source by binary itself
(Linux, Debian 3.1):

  cd ghc/6.4/ghc-6.4/
  ./configure --prefix=foo
  make
  make install

But it is so hard to obtain documentation! I tried    make html
(in the same directory). It reports 

------------------------------------------------------------------------
===fptools== Recursively making `html' in glafp-utils ghc libraries hslibs 
docs
...
PWD = /home/mechvel/ghc/6.4/ghc-6.4
--
...
...
rm -f -rf users_guide/
stringparam base.dir users_guide/ \
            --stringparam use.id.as.filename 1 \
            --stringparam html.stylesheet fptools.css \
            --stringparam toc.section.depth 3 --stringparam section.autolabel 1
--stringparam section.label.includes.component.label 1   \
            /html/chunk.xsl users_guide.xml
make[3]: stringparam: Command not found
...
(Continue reading)

Donald Bruce Stewart | 1 Jun 2005 12:37
Picon
Picon
Favicon
Gravatar

Re: make html

mechvel:
> Dear GHC supporters,
> 
> I have made  ghc-6.4  from source by binary itself
> (Linux, Debian 3.1):
> 
>   cd ghc/6.4/ghc-6.4/
>   ./configure --prefix=foo
>   make
>   make install
> 
> But it is so hard to obtain documentation! I tried    make html
> (in the same directory). It reports 
> 
> ------------------------------------------------------------------------
> ===fptools== Recursively making `html' in glafp-utils ghc libraries hslibs 
> docs
> ...
> PWD = /home/mechvel/ghc/6.4/ghc-6.4
> --
> ...
> ...
> rm -f -rf users_guide/
> stringparam base.dir users_guide/ \
>             --stringparam use.id.as.filename 1 \
>             --stringparam html.stylesheet fptools.css \
>             --stringparam toc.section.depth 3 --stringparam section.autolabel 1
> --stringparam section.label.includes.component.label 1   \
>             /html/chunk.xsl users_guide.xml
> make[3]: stringparam: Command not found
(Continue reading)

Serge D. Mechveliani | 1 Jun 2005 13:51
Picon

Re: make html

On Wed, Jun 01, 2005 at 08:37:07PM +1000, Donald Bruce Stewart wrote:

> mechvel:
> > Dear GHC supporters,
> > 
> > I have made  ghc-6.4  from source by binary itself
> > [..]

> > But it is so hard to obtain documentation!
> > [..]
> > ...
> > 
> > Why not provide, say, a couple of ready  .ps  files for user guide and library guide?  
> > And if it is .html, let them be ready .html files.
> 

> It *is* hard to build the documentation, but luckily ghc releases are
> also accompanied by documentation releases. Some useful docs for 6.4 are at:
>     http://www.haskell.org/ghc/documentation.html
> 
> including:
>     http://www.haskell.org/ghc/docs/latest/libraries.html.tar.gz
>     http://www.haskell.org/ghc/docs/latest/users_guide.ps.gz
> 

Thank you.
The problem was that I could not find these  .gz  archives  by following the 
www references. I wonder what I was missing.
Now, as I read your letter, I go to  .../docs/latest/   and observe them.

(Continue reading)

Jens Fisseler | 1 Jun 2005 14:54
Picon
Favicon

Simplifier output explanation needed

Hi everbody!

I'm currently trying to optimize some code, in particular trying to make
some functions as strict as possible. To do this, I quite often look for
strictness annotations either in the interface files or the the
simplifier output. Doing this, something odd occured to me: inserting a
'$!' into a function call, trying to enforce eager evaluation, the
simplifier output changed. Ok, I should expect this, but I don't
understand the change. The function name got '$s' as a prefix and the
strictness annotation ('Str: DmdType SSL') vanished.

So my question is what all those different prefixes mean. I've stumbled
across at least '$s' and '$w' (worker wrapper?). Why did the strictness
annotation disappear? Is there any documentation that can enlighten me?

Regards,

	Jens
Brian Smith | 1 Jun 2005 17:55
Picon

Re: make html

Hi,

On 6/1/05, Serge D. Mechveliani <mechvel <at> botik.ru> wrote:
> Dear GHC supporters,
> 
> rm -f -rf users_guide/
> stringparam base.dir users_guide/ \
>             --stringparam use.id.as.filename 1 \
>             --stringparam html.stylesheet fptools.css \
>             --stringparam toc.section.depth 3 --stringparam section.autolabel 1
> --stringparam section.label.includes.component.label 1   \
>             /html/chunk.xsl users_guide.xml
> make[3]: stringparam: Command not found

This means that ./configure could not find xsltproc; The command is
supposed to be "/path/to/xsltproc --stringparam..." but the variable
that holds the path to xsltproc is empty. Make sure that you have
libxslt on your system, in a location where ./configure can find it.
Bulat Ziganshin | 1 Jun 2005 08:23

Re[2]: ghc 6.4 import problem

Hello Fergus,

Tuesday, May 31, 2005, 10:24:41 PM, you wrote:

>> import Data.Set hiding (map)
>> import qualified Data.Set as Set
>> 
>> will do fine.

FH> That code only compiles with ghc 6.4, and won't compile with ghc 6.2:
FH> you'll get an error for the "hiding (map)" part, because in 6.2
FH> Data.Set does not contain a "map" function.

btw, question to Simon Marlow and Simon PJ - how about disabling this
error message? 

--

-- 
Best regards,
 Bulat                            mailto:bulatz <at> HotPOP.com
Serge D. Mechveliani | 1 Jun 2005 16:20
Picon

Set, Map libraries

Dear GHC team,

I am looking into the .html docs on the libraries of  Map and Set.
Here follow the questions and notices.

1.  elems     :: Set a -> [a]
    setToList :: Set a -> [a]

  These two look like synonyms, but have different comments.
  Am I missing something? 

2.  size :: Set a -> Int    -- O(1) ...

  And for large sets, the user needs to program

  genericSize :: Set a -> Integer  
  genericSize =  genericLength . Data.Set.elems
  ?
  Is this possible to make it O(1) too?

3. Data.Map  has  lookup  and  findWithDefault.
   According to name correspondence, a natural name for the latter
   would be  lookupWithDefault
   - ?

4. Data.Set.intersection.
   In old library, it was  `intersect'  -- if I recall correct.
   So, it is natural to include `intersect' to the `Obsolete' list. 

5. Name resolution.
(Continue reading)

Krasimir Angelov | 2 Jun 2005 09:21
Picon
Gravatar

.depend in base package

Hello, Guys

I just tried to update and build my CVS tree, but the compilation
failed for base package. In the 'make boot' the .depend file is
created but it contains only the C part. The compiler is invoked as
normal and there isn't any error. The compilation is failing latter
when it tries to build Control.Arrow before Prelude. Do you have any
idea what is going wrong? It was working when I tried it last time.

Cheers,
  Krasimir

# DO NOT DELETE: Beginning of C dependencies
System/CPUTime_hsc.o System/CPUTime_hsc.p_o: System/CPUTime_hsc.c
System/Time_hsc.o System/Time_hsc.p_o: System/Time_hsc.c
Text/Regex/Posix_hsc.o Text/Regex/Posix_hsc.p_o: Text/Regex/Posix_hsc.c
# DO NOT DELETE: End of C dependencies
# DO NOT DELETE: Beginning of Haskell dependencies
# DO NOT DELETE: End of Haskell dependencies
Robert van Herk | 2 Jun 2005 09:48
Picon

Re: Set, Map libraries


>6. My module applies  Data.Set.null (s :: Set a),
>   and                         null (xs :: [a]).
>
>  Why ghc reports of the clash with  GHC.List.null ?
>  Is  GHC.List  same as old  List  library module?
>  Should I write
>                 import GHC.List (genericLength, null)
>  instead of     import List     (genericLength)
>  ?
>  
>
As the documentation reads:

This module is intended to be imported qualified, to avoid name clashes 
with Prelude 
<http://www.haskell.org/ghc/docs/latest/html/libraries/base/Prelude.html> 
functions. eg.

  import Data.Set as Set

So, you should write:

import qualified Data./x/ as /y/

Now, no name clashes will occur. However, you will have to write 
/y/.null to access null in /x/, for example:

import qualified Data.Set as Set

(Continue reading)

Jens Fisseler | 2 Jun 2005 10:00
Picon
Favicon

Re: Set, Map libraries

> 1.  elems     :: Set a -> [a]
>     setToList :: Set a -> [a]
> 
>   These two look like synonyms, but have different comments.
>   Am I missing something? 

Both functions compute the same list, and IMHO the comments state the
same.

> 2.  size :: Set a -> Int    -- O(1) ...
> 
>   And for large sets, the user needs to program
> 
>   genericSize :: Set a -> Integer  
>   genericSize =  genericLength . Data.Set.elems
>   ?
>   Is this possible to make it O(1) too?

No, 'genericSize' cannot work in O(1) time, but by looking at the source
you will see that a 'Set' contains an element representing its size, so
'size' can work in constant time.

Regards,

	Jens

Gmane