Re: [Haskell-cafe] parsec2 vs. parsec3... again

2011-01-15 Thread Neil Mitchell
 This isn't completely without basis. For instance, I made some big speed
 improvements to attoparsec's very performance-sensitive takeWhile function
 just the other day, thanks to -auto-all.

 I might, though, see if there's a way I could enable that flag only for
 myself (in a way that I wouldn't routinely forget).

See ~/.cabal/config - I use that to make sure all my packages are
installed globally with profiling, and I think it might have enough
options to force -auto-all in some way.

Thanks, Neil

___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] hoogle command line program on Linux

2011-01-15 Thread Neil Mitchell
On Mon, Jan 10, 2011 at 10:17 PM, Neil Mitchell ndmitch...@gmail.com wrote:
 If so, I'll make a new release that just changes the
 file creation mask to the above during hoogle data (and sets it back
 after).

Thanks to Erik's help testing preview versions I've now released
Hoogle 4.1.4 that sets the file creation mask appropriately.

Thanks, Neil

___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] hoogle command line program on Linux

2011-01-15 Thread Ivan Lazar Miljenovic
On 15 January 2011 22:53, Neil Mitchell ndmitch...@gmail.com wrote:
 On Mon, Jan 10, 2011 at 10:17 PM, Neil Mitchell ndmitch...@gmail.com wrote:
 If so, I'll make a new release that just changes the
 file creation mask to the above during hoogle data (and sets it back
 after).

 Thanks to Erik's help testing preview versions I've now released
 Hoogle 4.1.4 that sets the file creation mask appropriately.

Shouldn't data like this really go in /var rather than /usr ?  To
quote Wikipedia [1]: /var/: Variable files—files whose content is
expected to continually change during normal operation of the
system—such as logs, spool files, and temporary e-mail files.

[1]: http://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard

-- 
Ivan Lazar Miljenovic
ivan.miljeno...@gmail.com
IvanMiljenovic.wordpress.com

___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] hoogle command line program on Linux

2011-01-15 Thread Neil Mitchell
 Thanks to Erik's help testing preview versions I've now released
 Hoogle 4.1.4 that sets the file creation mask appropriately.

 Shouldn't data like this really go in /var rather than /usr ?  To
 quote Wikipedia [1]: /var/: Variable files—files whose content is
 expected to continually change during normal operation of the
 system—such as logs, spool files, and temporary e-mail files.

The Hoogle databases are expected to change very rarely - most users
will install them when they install Hoogle. A small number will update
them occasionally as the packages update. I'm using the Cabal datadir
to store the databases, but does Cabal provide a more sensible place
to put them? As a Windows user, I'm happy to defer to what Posix
system users want.

Thanks, Neil

___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] hoogle command line program on Linux

2011-01-15 Thread Joachim Breitner
Hi,

Am Samstag, den 15.01.2011, 13:38 + schrieb Neil Mitchell:
  Thanks to Erik's help testing preview versions I've now released
  Hoogle 4.1.4 that sets the file creation mask appropriately.
 
  Shouldn't data like this really go in /var rather than /usr ?  To
  quote Wikipedia [1]: /var/: Variable files—files whose content is
  expected to continually change during normal operation of the
  system—such as logs, spool files, and temporary e-mail files.
 
 The Hoogle databases are expected to change very rarely - most users
 will install them when they install Hoogle. A small number will update
 them occasionally as the packages update. I'm using the Cabal datadir
 to store the databases, but does Cabal provide a more sensible place
 to put them? As a Windows user, I'm happy to defer to what Posix
 system users want.

shouldn’t they change with every library update? In that case, maybe
that should be managed by cabal, similar to how cabal can update your
haddock index at ~/.cabal/share/doc/index.html.

(Such an infrastructure would be nice for other people as well, e.g.
leksah).

But I might misunderstand how hoogle works and what the databases are
for.

Greetings,
Joachim

-- 
Joachim nomeata Breitner
  mail: m...@joachim-breitner.de | ICQ# 74513189 | GPG-Key: 4743206C
  JID: nome...@joachim-breitner.de | http://www.joachim-breitner.de/
  Debian Developer: nome...@debian.org


signature.asc
Description: This is a digitally signed message part
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Needed: A repeatable process for installing GHC on Windows

2011-01-15 Thread Neil Mitchell
 Earlier today I was trying to set up a Windows build bot for the
 'network' package. That turned out to be quite difficult. Too much
 playing with PATHs, different gcc versions, etc. Does anyone have a
 repeatable, step-by-step process to install GHC and get a build
 environment (where I could build network) going?

No, but I used to (and sadly can't find it any more). I used to have a
script called ghcsetup which built GHC on Windows, and importantly
validated the setup was correct (the right gcc was first in the path
etc) and took actions to correct it.

I am sure there used to be a great web page on the GHC wiki, saying
the exact steps to build (written by Claus), but I can't find it any
more. Perhaps Claus knows where it has gone?

Thanks, Neil

___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] hoogle command line program on Linux

2011-01-15 Thread Neil Mitchell
Hi Joachim,

 The Hoogle databases are expected to change very rarely - most users
 will install them when they install Hoogle. A small number will update
 them occasionally as the packages update. I'm using the Cabal datadir
 to store the databases, but does Cabal provide a more sensible place
 to put them? As a Windows user, I'm happy to defer to what Posix
 system users want.

 shouldn’t they change with every library update? In that case, maybe
 that should be managed by cabal, similar to how cabal can update your
 haddock index at ~/.cabal/share/doc/index.html.

Yes, that's exactly how it should work. All we need is someone to do
the work :-) There is a bug tracking the progress on this issue here:
http://code.google.com/p/ndmitchell/issues/detail?id=80 - but its a
reasonable amount of work, touching lots of different parts of the
Haskell infra.

Thanks, Neil

___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Needed: A repeatable process for installing GHC on Windows

2011-01-15 Thread Claus Reinke

Earlier today I was trying to set up a Windows build bot for the
'network' package. That turned out to be quite difficult. Too much
playing with PATHs, different gcc versions, etc. Does anyone have a
repeatable, step-by-step process to install GHC and get a build
environment (where I could build network) going?


If you don't need to build GHC yourself, then the binary installers
(or daily snapshot builds) should come with their own copy of GCC 
tools. So you only need some shell/autoconf environment on top

(either cygwin or MSYS). Fewer things to go wrong than in the past,
but cygwin's configure scripts tend to think they're on unix, and
for MSYS, it can be difficult to get the right pieces together.

Snapshots should appear as installers and tar-balls here:

   http://www.haskell.org/ghc/download#snapshots

but windows build failures tend to go unnoticed for a while,
so you might have to send a heads-up to cvs-ghc@.. if you 
need up to date builds.



No, but I used to (and sadly can't find it any more). I used to have a
script called ghcsetup which built GHC on Windows, and importantly
validated the setup was correct (the right gcc was first in the path
etc) and took actions to correct it.

I am sure there used to be a great web page on the GHC wiki, saying
the exact steps to build (written by Claus), but I can't find it any
more. Perhaps Claus knows where it has gone?


Yes, I ran into this so often that I made a record of the build
your own GHC steps one time, together with a cygwin package
description that recorded the cygwin packages needed for such
builds. Both cygwin and GHC have moved since then, and I guess
someone decided it was too much trouble to keep the step-by-step
guide up to date, or perhaps it was no longer needed (check with 
GHC HQ to be sure)?


If you do need to build your own GHC head, the GHC wiki building 
guide has a page on 


   Setting up a Windows system for building GHC
   http://hackage.haskell.org/trac/ghc/wiki/Building/Preparation/Windows

which not only claims to list suitable MSYS versions, but holds
copies (so you don't have to hunt for the MSYS packages), as well
as links to other necessary tools (python, alex, happy, darcs). What
I do not know is whether the versions are still up to date (check
with GHC HQ).

As usual, if the wiki page instructions are not working anymore,
please add a note, and include any improvements you figure out;-)

Claus

PS. GHC no longer uses buildbot, it has its own builder, so if
   you really want to set up a build bot, you can probably copy
   GHC HQ's setup for the purpose?


___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Needed: A repeatable process for installing GHC on Windows

2011-01-15 Thread Johan Tibell
I've managed to set up a working MinGW/MSYS environment, build the
network package, and document the steps here:

http://blog.johantibell.com/2011/01/setting-up-haskell-development.html

Johan

___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] ANN: extcore 1.0

2011-01-15 Thread Tim Chevalier
On Thu, Jan 13, 2011 at 11:45 AM, Tim Chevalier catamorph...@gmail.com wrote:
 Hello,

 I've recently released version 1.0 of extcore, a library for
 processing code in GHC's text-based External Core format. extcore
 includes a parser, prettyprinter, typechecker, and interpreter for
 External Core, as well as modules for computing module dependencies
 and combining multiple Core modules into a single module. The library
 was originally written by Andrew Tolmach and was part of the GHC
 distribution. After becoming its maintainer, about a year ago I moved
 the library to Hackage. Since in the past year, the library has
 acquired some users but has received no fatal bug reports, I thought
 it was time for a 1.0 release.

 You might be interested in using this library if you're a compiler or
 tool writer who wants to write a tool that processes the output of
 GHC's front-end and simplifier -- that is, code in the Core
 intermediate language, a typed functional language in which many of
 Haskell's features have been desugared into a polymorphically typed
 lambda-calculus (extended with type coercions, as are necessary to
 support type system features such as GADTs). Such tools might include
 alternative back-ends or new program transformations. Using the
 extcore library allows tool writers to experiment with implementing
 new compiler features without modifying GHC itself. While the GHC API
 is also a route to adding new stages to the GHC pipeline, using
 extcore has the advantage that External Core is well-specified (read
 on) and less subject to change than GHC's internal Core format. The
 library has been tested on External Core produced by GHC 6.10.* and
 GHC 6.12.*. It has not yet been tested on External Core produced by
 GHC 7.*.

 Documentation for the External Core format itself lives at
 http://www.haskell.org/ghc/docs/latest/html/ext-core/core.pdf - but

Oops, that'll learn me not to check links before I send email. The
correct URL for the documentation is:

http://www.haskell.org/ghc/docs/latest/core.pdf

 documentation for the library is limited, and I would welcome
 documentation or other patches. Currently the best source of
 documentation for the library is the README file, found in the
 distribution. To get the distribution, please visit
 http://hackage.haskell.org/package/extcore or cabal install extcore.

 Please direct replies to glasgow-haskell-us...@haskell.org, with me
 CCed. Please make sure not to reply to hask...@haskell.org.


Cheers,
Tim

-- 
Tim Chevalier * http://cs.pdx.edu/~tjc/ * Often in error, never in doubt
an intelligent person fights for lost causes,realizing that others
are merely effects -- E.E. Cummings

___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


[Haskell-cafe] Guy Steele's Praise For Haskell @ Strange Loop Keynote

2011-01-15 Thread aditya siram
Guy Steele did the keynote on parallelism [1] at the Strange Loop [2]
conference in which he said that he could do it over Fortress [3]
would have been modeled on Haskell rather than Fortran. The relevant
portions are between 49:36 - 49:50. Thought it might interest readers
of this list.

-deech

[1] http://www.infoq.com/presentations/Thinking-Parallel-Programming
[2] http://strangeloop2010.com/
[3] http://en.wikipedia.org/wiki/Fortress_(programming_language)

___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Guy Steele's Praise For Haskell @ Strange Loop Keynote

2011-01-15 Thread Warren Henning
Pretty interesting links, thanks.

Unfortunately, if Fortress is to have any chance of success with
programmers, it will need to be straight-line and essentially have
Algol-based syntax.

MATLAB, LabVIEW, Fortran, Java, C, and non-OO C++/random subsets of
C++ rule scientific programming. Unit testing is rare and sporadic. In
dragging scientists halfway to something new, the exotic, powerful
things in Haskell will have to be left behind, just as Java only has a
tiny fraction of what Smalltalk has had since the '80s.

That seems clear to me, anyway.

Warren

On Sat, Jan 15, 2011 at 2:31 PM, aditya siram aditya.si...@gmail.com wrote:
 Guy Steele did the keynote on parallelism [1] at the Strange Loop [2]
 conference in which he said that he could do it over Fortress [3]
 would have been modeled on Haskell rather than Fortran. The relevant
 portions are between 49:36 - 49:50. Thought it might interest readers
 of this list.

 -deech

 [1] http://www.infoq.com/presentations/Thinking-Parallel-Programming
 [2] http://strangeloop2010.com/
 [3] http://en.wikipedia.org/wiki/Fortress_(programming_language)

___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Guy Steele's Praise For Haskell @ Strange Loop Keynote

2011-01-15 Thread Jake McArthur
So everybody doesn't have to go watch it, here is a shortened version of 
what Steele said in the video:



Although Fortress is originally designed as an object-oriented framework in 
which to build an array-style scientific programming language, [...] as we've 
experimented with it and tried to get the parallelism going we found ourselves 
pushed more and more in the direction of using immutable data structures and a 
functional style of programming. [...] If I'd known seven years ago what I know 
now, I would have started with Haskell and pushed it a tenth of the way toward 
Fortran instead of starting with Fortran and pushing it nine tenths of the way 
toward Haskell.


I think I might use this in some slides soon. :) Thanks for pointing it out!

- Jake

___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Misleading MVar documentation

2011-01-15 Thread Jan-Willem Maessen
On Wed, Jan 12, 2011 at 11:23 AM, Neil Brown nc...@kent.ac.uk wrote:
 On 12/01/11 15:53, Edward Z. Yang wrote:

 These are interesting, opposed perspectives, and I suspect what would be
 good is to treat both situations.  I think perhaps what would be good
 to put in the introduction is the conceptual model of MVars: that is,
 take and put are the fundamental operations, and everything else is
 composed of them.  With additional constraints on who is writing and
 reading
 MVars, you can assume more safety properties, but you have to ensure
 that those are indeed held (or you should use STM instead.)

 I'll try another writeup. Does anyone know where the original papers for
 MVars might be?

 I think the original paper is Concurrent Haskell, available here:

 http://www.haskell.org/ghc/docs/papers/concurrent-haskell.ps.gz

 and here:

 http://research.microsoft.com/en-us/um/people/simonpj/papers/concurrent-haskell.ps.gz

Actually, the first presentation of M-structures is rather older than
that.  See Barth, Nikhil, and Arvind's FPCA '91 paper:
http://portal.acm.org/citation.cfm?id=652538

The original formulation was indeed in terms of take and put,
though unconditional read and write primitives were prtty commonly
used in Id programs.  The take/put view can also usefully be thought
of as a 1-element blocking channel.

-Jan-Willem MAessen


 Thanks,

 Neil.

 ___
 Haskell-Cafe mailing list
 Haskell-Cafe@haskell.org
 http://www.haskell.org/mailman/listinfo/haskell-cafe


___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Guy Steele's Praise For Haskell @ Strange Loop Keynote

2011-01-15 Thread Jan-Willem Maessen
On Sat, Jan 15, 2011 at 9:02 PM, Jake McArthur jake.mcart...@gmail.com wrote:
 So everybody doesn't have to go watch it, here is a shortened version of
 what Steele said in the video:

 Although Fortress is originally designed as an object-oriented framework
 in which to build an array-style scientific programming language, [...] as
 we've experimented with it and tried to get the parallelism going we found
 ourselves pushed more and more in the direction of using immutable data
 structures and a functional style of programming. [...] If I'd known seven
 years ago what I know now, I would have started with Haskell and pushed it a
 tenth of the way toward Fortran instead of starting with Fortran and pushing
 it nine tenths of the way toward Haskell.

 I think I might use this in some slides soon. :) Thanks for pointing it out!

The big things I can recall missing were pattern matching and
Haskell-style classes rather than OO + generic typing.  The Fortress
type system actually approximates pattern matching in some interesting
ways, but it's not the same.

-Jan-Willem Maessen
Experienced Fortress programmer (!)


 - Jake

 ___
 Haskell-Cafe mailing list
 Haskell-Cafe@haskell.org
 http://www.haskell.org/mailman/listinfo/haskell-cafe


___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Misleading MVar documentation

2011-01-15 Thread Stefan Monnier
 I'll try another writeup. Does anyone know where the original papers for
 MVars might be?

In my mind, full/empty variables date back to dataflow machines.
But I don't know where I got this idea.


Stefan


___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] Guy Steele's Praise For Haskell @ Strange Loop Keynote

2011-01-15 Thread C K Kashyap


  Although Fortress is originally designed as an object-oriented framework
  in which to build an array-style scientific programming language, [...]
 as
  we've experimented with it and tried to get the parallelism going we
 found
  ourselves pushed more and more in the direction of using immutable data
  structures and a functional style of programming. [...] If I'd known
 seven
  years ago what I know now, I would have started with Haskell and pushed
 it a
  tenth of the way toward Fortran instead of starting with Fortran and
 pushing
  it nine tenths of the way toward Haskell.


This is at 49th minute into the talk :)
Really nice to hear him say this.

Regards,
Kashyap
___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe