[Haskell-cafe] darcs patch dependencies in dot format

2012-05-12 Thread Sönke Hahn
Hi all!

Yesterday I wrote a little tool to output the dependencies of darcs
patches in dot format. The hardest part was to wrap my head around the
darcs API and find a way to let it compute the patch dependencies. I
don't know, if I got it right, but it looks correct at first glance.

Here is the code:

https://patch-tag.com/r/shahn/darcs2dot

To use it just execute the program in a darcs repo and it will output a
dot graph to stdout. The graph does not contain all dependencies, but
the transitive reduction. The patch names are truncated at 15 characters.

And here is an example graph:

http://open-projects.net/~shahn/patchDeps.pdf

These are the patch dependencies of one of my darcs repos
(https://patch-tag.com/r/shahn/hate). Some observations I made:

* There are two completely separate subgraphs. One subgraph seems to be
for the testsuite, the other for the actual code. This means, the two
don't depend on each other and could easily be put in two distinct repos.
* There is a re-implementation patch with a lot of incoming and
outgoing edges. (Which makes sense.)
* There are some sequences of patches (e.g. these four allow ...
patches in the upper left corner) that seem to contain related patches.
* darcs's patch system is awesome!

Any comments or suggestions?

Cheers,
Sönke

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


Re: [Haskell-cafe] Can Haskell outperform C++?

2012-05-12 Thread Gregg Lebovitz

Chris,

Thanks you for indulging me. I will eventually get use to the idea that 
there is a wiki page for almost every topic :-)


Gregg

On 5/12/2012 1:02 AM, Chris Wong wrote:

On Sat, May 12, 2012 at 12:41 AM, Gregg Lebovitzglebov...@gmail.com  wrote:

I would find it useful to pull all this information together into a single
document that discusses all the performance issues in one place and shares
the real life experience is dealing with each issue. I see this as a best
practice paper rather than a research document.

Does such a document exist? If not, I am willing try and start one.

http://www.haskell.org/haskellwiki/Performance

;)


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


Re: [Haskell-cafe] Linear Diaphantine equation solver bug

2012-05-12 Thread John D. Ramsdell
Recall I reported a surprising result from an implementation of a
Linear Diophantine equation solver based on an algorithm by Contejean
and Devie.  When using it to solve an inhomogeneous equation, a
version of my code generated a non-minimal solution.  It turns out
that when solving the inhomogeneous problem, one must filter out
solutions to the homogeneous problem.  This was not clear from the
description of the algorithm I used, but a careful analysis of the
section on inhomogeneous equations in the Contejean and Devie papers
makes clear the correct fix.

In other news, Levent Erkok sent news about his SVB package.

John

Levent:

In case this is of any interest to you; the latest release of SBV now
has a diophantine solver example:

  
http://hackage.haskell.org/packages/archive/sbv/2.0/doc/html/Data-SBV-Examples-Existentials-Diophantine.html

It's generalized to a system of equations instead of just one, and
uses the underlying SMT solver to find the minimal solutions. I see it
as a nice complement to your work, where one can check the results of
your solver against the SBV produced one for extra assurance if
needed.

On Wed, Apr 25, 2012 at 7:09 PM, John D. Ramsdell ramsde...@gmail.com wrote:
 I uploaded a new version of the ACU unifier in package cmu.  It
 includes a Linear Diophantine equation solver that now handles
 inhomogeneous equations.  What's interesting  is the algorithm is
 based on a paper by Contejean and Devie.  That paper includes a proof
 of correctness of their algorithm.  Yet I found an example in which
 following the steps in the order they gave, the algorithm produces
 extra answers.  I had to switch the order of the steps in the
 algorithm to get the right answer.  I wonder if anyone else knows of
 this issue.  The example is given in the module documentation on
 Hackage.

 John

 http://hackage.haskell.org/packages/archive/cmu/1.7/doc/html/Algebra-CommutativeMonoid-LinDiophEq.html

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


[Haskell-cafe] ANN: Patterns 0.0.3

2012-05-12 Thread Tobias Schoofs


Hi!

I am pleased to announce patterns-0.0.3.

On Hackage: http://hackage.haskell.org/package/patterns

The Patterns package implements communication patterns that are often
used in distributed, message-oriented applications. The package
implements a set of basic patterns and a device to connect basic
patterns through routers, brokers, load balancers, etc. The package is
based on the zeromq library, but abstracts from the notion of sockets,
on which zeromq is built.

Cheers

Tobias


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


Re: [Haskell-cafe] darcs patch dependencies in dot format

2012-05-12 Thread Felipe Almeida Lessa
Truly amazing! I wonder it would fare with larger repositories. =)

Cheers,

--
Felipe – enviado do meu Galaxy Tab.
Em 12/05/2012 09:52, Sönke Hahn sh...@cs.tu-berlin.de escreveu:

 Hi all!

 Yesterday I wrote a little tool to output the dependencies of darcs
 patches in dot format. The hardest part was to wrap my head around the
 darcs API and find a way to let it compute the patch dependencies. I
 don't know, if I got it right, but it looks correct at first glance.

 Here is the code:

 https://patch-tag.com/r/shahn/darcs2dot

 To use it just execute the program in a darcs repo and it will output a
 dot graph to stdout. The graph does not contain all dependencies, but
 the transitive reduction. The patch names are truncated at 15 characters.

 And here is an example graph:

 http://open-projects.net/~shahn/patchDeps.pdf

 These are the patch dependencies of one of my darcs repos
 (https://patch-tag.com/r/shahn/hate). Some observations I made:

 * There are two completely separate subgraphs. One subgraph seems to be
 for the testsuite, the other for the actual code. This means, the two
 don't depend on each other and could easily be put in two distinct repos.
 * There is a re-implementation patch with a lot of incoming and
 outgoing edges. (Which makes sense.)
 * There are some sequences of patches (e.g. these four allow ...
 patches in the upper left corner) that seem to contain related patches.
 * darcs's patch system is awesome!

 Any comments or suggestions?

 Cheers,
 Sönke

 ___
 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] Can Haskell outperform C++?

2012-05-12 Thread Ertugrul Söylemez
Gregg Lebovitz glebov...@gmail.com wrote:

 Ryan writes:

 With a few years of Haskell experience in my backpack I know how to
 utilize laziness to get amazing performance for code that most people
 would feel must be written with destructively updating loop.

That was me actually.  Just a minor side note that some people may
consider a nitpick, but I'd like to keep being the author of my own
statements.  Thanks.


Greets,
Ertugrul

-- 
nightmare = unsafePerformIO (getWrongWife = sex)
http://ertes.de/


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