Re: [Haskell-cafe] Announce: Leksah 0.13.1 (a bit experimental)

2013-01-07 Thread Hamish Mackenzie
Features in process-leksah have been merged into process.  For
newer versions of GHC leksah-server just depends on process.

If it is trying to install process-leksah then something else
has probably gone wrong.

Check "ghc-pkg list" for old versions of leksah.  Make sure
you have the latest versions of ltk, leksah and leksah-server
from github.  (if you use cabal-meta they will be in
the "leksah/vendor" subdirectory).

Here are the steps for installing from scratch...
https://github.com/leksah/leksah/blob/master/.travis.yml

Here is what it should look like when it installs...
https://travis-ci.org/leksah/leksah

On 8 Jan 2013, at 07:25, Peter Simons  wrote:

> Hi Hamish,
> 
> would it be possible to get an update for process-leksah that works with
> recent versions of the 'filepath' package? I cannot build leksah-server
> with GCC 7.4.2 because of this issue.
> 
> Take care,
> Peter
> 
> 
> ___
> 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] Announce: Leksah 0.13.1 (a bit experimental)

2013-01-07 Thread Peter Simons
Hi Hamish,

would it be possible to get an update for process-leksah that works with
recent versions of the 'filepath' package? I cannot build leksah-server
with GCC 7.4.2 because of this issue.

Take care,
Peter


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


Re: [Haskell-cafe] Example programs with ample use of deepseq?

2013-01-07 Thread Johan Tibell
On Mon, Jan 7, 2013 at 4:06 AM, Joachim Breitner
 wrote:
> I’m wondering if the use of deepseq to avoid unwanted lazyness might be
> a too large hammer in some use cases. Therefore, I’m looking for real
> world programs with ample use of deepseq, and ideally easy ways to test
> performance (so preferably no GUI applications).

I never use deepseq, except when setting up benchmark data where it's
a convenient way to make sure that the data is evaluated before the
benchmark is run.

When removing space leaks you want to avoid creating the thunks in the
first place, not remove them after the fact. Consider a leak caused by
a list of N thunks. Even if you deepseq that list to eventually remove
those thunks, you won't lower your peak memory usage if the list was
materialized at some point.

In addition, by not creating the thunks in the first place you avoid
some allocation costs.

-- Johan

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


Re: [Haskell-cafe] Example programs with ample use of deepseq?

2013-01-07 Thread Joachim Breitner
Hi,
Am Montag, den 07.01.2013, 13:06 +0100 schrieb Joachim Breitner:
> I’m wondering if the use of deepseq to avoid unwanted lazyness might be
> a too large hammer in some use cases. Therefore, I’m looking for real
> world programs with ample use of deepseq, and ideally easy ways to test
> performance (so preferably no GUI applications).

surprisingly, deepseq is not used as much as I thought.
http://packdeps.haskellers.com/reverse/deepseq lists a lot of packages,
but (after grepping through some of the code) most just define NFData
instances and/or use it in tests, but rarely in the „real“ code. For
some reason I expected it to be in more widespread use.

But therefore I am even more interested in non-hackaged applications
that I can be allowed to stud – in return I might be able to tell you
way to speed up your application.

Greetings,
Joachim

-- 
Joachim "nomeata" Breitner
  m...@joachim-breitner.de  |  nome...@debian.org  |  GPG: 0x4743206C
  xmpp: nome...@joachim-breitner.de | http://www.joachim-breitner.de/



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] Example programs with ample use of deepseq?

2013-01-07 Thread Edward Z. Yang
There are two senses in which deepseq can be overkill:

1. The structure was already strict, and deepseq just forces another
no-op traversal of the entire structure.  This hypothetically affects
seq too, although seq is quite cheap so it's not a problem.

2. deepseq evaluates too much, when it was actually sufficient only to
force parts of the structure, e.g. the spine of a list.  This is less
common for the common use-cases of deepseq; e.g. if I want to force pending
exceptions I am usually interested in all exceptions in a (finite) data
structure; a space leak may be due to an errant closure---if I don't
know which it is, deepseq will force all of them, ditto with work in
parallel programs.  Certainly there will be cases where you will want snip
evaluation at some point, but that is somewhat difficult to encode
as a typeclass, since the criterion varies from structure to structure.
(Though, perhaps, this structure would be useful:

data Indirection a = Indirection a
class DeepSeq Indirection
rnf _ = ()
)

Cheers,
Edward

Excerpts from Joachim Breitner's message of Mon Jan 07 04:06:35 -0800 2013:
> Dear Haskellers,
> 
> I’m wondering if the use of deepseq to avoid unwanted lazyness might be
> a too large hammer in some use cases. Therefore, I’m looking for real
> world programs with ample use of deepseq, and ideally easy ways to test
> performance (so preferably no GUI applications).
> 
> I’ll try to find out, by runtime observerations, which of the calls ot
> deepseq could be replaced by id, seq, or „shallow seqs“ that, for
> example, calls seq on the elements of a tuple.
> 
> Thanks,
> Joachim
> 

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


[Haskell-cafe] Example programs with ample use of deepseq?

2013-01-07 Thread Joachim Breitner
Dear Haskellers,

I’m wondering if the use of deepseq to avoid unwanted lazyness might be
a too large hammer in some use cases. Therefore, I’m looking for real
world programs with ample use of deepseq, and ideally easy ways to test
performance (so preferably no GUI applications).

I’ll try to find out, by runtime observerations, which of the calls ot
deepseq could be replaced by id, seq, or „shallow seqs“ that, for
example, calls seq on the elements of a tuple.

Thanks,
Joachim

-- 
Joachim "nomeata" Breitner
  m...@joachim-breitner.de  |  nome...@debian.org  |  GPG: 0x4743206C
  xmpp: nome...@joachim-breitner.de | http://www.joachim-breitner.de/



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