[Haskell-cafe] Cabal fail

2011-06-11 Thread Andrew Coppin
How do you make Cabal fail? Let me clarify. I built a package that uses a post-configure hook to do some settings detection. Under certain circumstances, it can fail. When this happens, the hook prints fatal error and quits. Unfortunately, I didn't actually /test/ whether it works. On further

[Haskell-cafe] Lazy lists vs generators

2011-06-11 Thread oleg
Yves Pare`s wrote: I cannot help smiling when I hear Java/C#/Python developers telling about the wondeful features of their languages ;) (- We have generators! We can _yield_ values! [1] - Yeah, so nice... We have simple lists... with lazy evaluation) Just for the record, lazy lists per

Re: [Haskell-cafe] Class and Instance

2011-06-11 Thread Patrick Browne
Thanks for the feedback. I have two further questions 1. Why is it that the Containers class signature does not allow instances to be list of list? I suspect it is because x is a constructor. 2. How would I change the Containers class signature to allow instances to be lists of lists. Thanks,

Re: [Haskell-cafe] Fixed points

2011-06-11 Thread Max Rabkin
On Fri, Jun 10, 2011 at 21:05, Alexander Solla alex.so...@gmail.com wrote: equivalenceClosure :: (Ord a) = Relation a - Relation a equivalenceClosure = fix (\f - reflexivity . symmetry . transitivity) If you want to learn about fix, this won't help you, but if you're just want the best way to

Re: [Haskell-cafe] Lazy lists vs generators

2011-06-11 Thread Jerzy Karczmarczuk
Le 11/06/2011 11:06, o...@okmij.org a écrit : The following web page talks about lazy lists and generators http://okmij.org/ftp/continuations/generators.html in (perhaps too) great detail. Oleg, when you mention Icon, you might - perhaps - observe that Griswold didn't introduce the

[Haskell-cafe] How do you test a parser?

2011-06-11 Thread Andrew Coppin
OK, so suppose you sit down and write a complicated string parser. Now how do you test that it works correctly? One way is to run the parser over a large corpus of real world samples. This has a number of problems: * If the parser is for a grammar you just invented yourself, presumably no

Re: [Haskell-cafe] Vi mode in ghci?

2011-06-11 Thread cheater cheater
readline has keyboard shortcuts to change from emacs mode to vi and a separate to go back. Find out what they are and check if they work on haskeline, you got me wondering but i have no ghci access from here. Definitely easier than editing a config. Cheers, D. On Sat, Jun 11, 2011 at 00:08, Marc

Re: [Haskell-cafe] Class and Instance

2011-06-11 Thread Daniel Patterson
The problem is that [] alone is not a concrete type - that is what the error is saying, that [] needs to be applied to another type to yield a concrete type. IE, you need a list of something, not just the idea of a list. That something can be polymorphic, so the following works (note the [a]):

Re: [Haskell-cafe] How do you test a parser?

2011-06-11 Thread Paul Johnson
On 11/06/11 14:10, Andrew Coppin wrote: OK, so suppose you sit down and write a complicated string parser. Now how do you test that it works correctly? If you have a function that turns a parse tree back into text again, you can try verifying that a round-trip is the identity function.

Re: [Haskell-cafe] In ML books; functors only consume produce structures; whereas, functions CP values.

2011-06-11 Thread Brent Yorgey
On Fri, Jun 10, 2011 at 07:53:58PM -0700, KC wrote: I've never seen such an easy description in Haskell books. Is there more going on with Haskell functors? Note that ML functors and Haskell functors are different things. ML functors are parameterized modules. Haskell functors are types

[Haskell-cafe] GHC7 build problem

2011-06-11 Thread Scott Lawrence
Trying to compile GHC7 from source (as the ubuntu repository is still on GHC6), I came across the following error in the final phase: libraries/base/GHC/ST.lhs:78:1: You cannot SPECIALISE `forever' because its definition has no INLINE/INLINABLE pragma (or its defining module

Re: [Haskell-cafe] How do you test a parser?

2011-06-11 Thread Sean Perry
Choices, choices. The first one is to use unit tests. Look at the grammar and make sure the obvious stuff fails or succeeds. a + b, a :+ b, etc. You can do this at the Haskell level with parser objects. Next you can write small samples to test things the unit tests did not. Compare the output

Re: [Haskell-cafe] How do you test a parser?

2011-06-11 Thread Alexander Solla
On Sat, Jun 11, 2011 at 10:06 AM, Sean Perry sha...@speakeasy.net wrote: Choices, choices. The first one is to use unit tests. Look at the grammar and make sure the obvious stuff fails or succeeds. a + b, a :+ b, etc. You can do this at the Haskell level with parser objects. Next you can

Re: [Haskell-cafe] How do you test a parser?

2011-06-11 Thread briand
On Sat, 11 Jun 2011 10:34:47 -0700 Alexander Solla alex.so...@gmail.com wrote: On Sat, Jun 11, 2011 at 10:06 AM, Sean Perry sha...@speakeasy.net wrote: Choices, choices. The first one is to use unit tests. Look at the grammar and make sure the obvious stuff fails or succeeds. a + b, a

[Haskell-cafe] Announcing: hashtables-1.0.0.0

2011-06-11 Thread Gregory Collins
Hi all, I’m very pleased to announce today the release of the first version of hashtables, a Haskell library for fast mutable hash tables. The hashtables library contains three different mutable hash table implementations in the ST monad, as well as a type class abstracting out the functions

Re: [Haskell-cafe] Announcing: hashtables-1.0.0.0

2011-06-11 Thread Michael Snoyman
This is awesome, thanks Greg! I definitely have some code locally that could benefit from a better hashtable implementation. Michael On Sat, Jun 11, 2011 at 9:20 PM, Gregory Collins g...@gregorycollins.net wrote: Hi all, I’m very pleased to announce today the release of the first version of

Re: [Haskell-cafe] How do you test a parser?

2011-06-11 Thread Kevin Charter
On Sat, Jun 11, 2011 at 7:10 AM, Andrew Coppin andrewcop...@btinternet.comwrote: If you have a function that turns a parse tree back into text again, you can try verifying that a round-trip is the identity function. Except perhaps sometimes it isn't. Perhaps a given expression has more than

Re: [Haskell-cafe] Fixed points

2011-06-11 Thread Alexander Solla
On Sat, Jun 11, 2011 at 3:19 AM, Max Rabkin max.rab...@gmail.com wrote: On Fri, Jun 10, 2011 at 21:05, Alexander Solla alex.so...@gmail.com wrote: equivalenceClosure :: (Ord a) = Relation a - Relation a equivalenceClosure = fix (\f - reflexivity . symmetry . transitivity) If you want to

Re: [Haskell-cafe] GHC7 build problem

2011-06-11 Thread Edward Z. Yang
Yes, the tree was broken for some time between yesterday and today, and you appear to have gotten unlikely. It should have been fixed now, so you should try again. Cheers, Edward Excerpts from Scott Lawrence's message of Sat Jun 11 12:44:18 -0400 2011: Trying to compile GHC7 from source (as

Re: [Haskell-cafe] Fixed points

2011-06-11 Thread Felipe Almeida Lessa
On Sat, Jun 11, 2011 at 4:21 PM, Alexander Solla alex.so...@gmail.com wrote: _symmetry :: (a, a) - (a, a) _joinOn :: (Ord a) = (a,a) - Set (a,a) - Set (a,a) A note on style: we use variables starting with an underline _ just when they are not used. This kind of use is confusing. Cheers! --

[Haskell-cafe] Toy implementation of the STG machine

2011-06-11 Thread Florian Weimer
I'm looking for a simple implementation of the STG machine to do some experiments, preferably implemented in something with memory safety. Performance is totally secondary. I'm also not interested in garbage collection details, but I do want to look at the contents of the various stacks.

Re: [Haskell-cafe] Toy implementation of the STG machine

2011-06-11 Thread Thomas Schilling
Does Bernie Pope's http://www.haskell.org/haskellwiki/Ministg work for you? On 11 June 2011 21:19, Florian Weimer f...@deneb.enyo.de wrote: I'm looking for a simple implementation of the STG machine to do some experiments, preferably implemented in something with memory safety. Performance is

Re: [Haskell-cafe] Toy implementation of the STG machine

2011-06-11 Thread Don Stewart
See also: * STG machine in Coq, http://www.cs.ox.ac.uk/files/3858/pirog-biernacki-hs10.pdf http://www.cs.ox.ac.uk/files/3858/pirog-biernacki-hs10.pdfAlso * ] Jon Mountjoy. The spineless tagless G-machine, naturally. 1998 ACM SIGPLAN International Conference on Functional Programming, SIGPLAN

Re: [Haskell-cafe] GHC7 build problem

2011-06-11 Thread Edward Z. Yang
It appears the build is still broken. Sorry! Please stand by, or roll back the last set of commits. Edward Excerpts from Scott Lawrence's message of Sat Jun 11 12:44:18 -0400 2011: Trying to compile GHC7 from source (as the ubuntu repository is still on GHC6), I came across the following error

Re: [Haskell-cafe] Toy implementation of the STG machine

2011-06-11 Thread Florian Weimer
* Thomas Schilling: Does Bernie Pope's http://www.haskell.org/haskellwiki/Ministg work for you? MiniSTG might do it, I will definitely look at it. The source repository is gone, but there's still a tarball on Hackage. I had hoped for something more interactive, though.

[Haskell-cafe] Yesod: How safe are forms?

2011-06-11 Thread Ertugrul Soeylemez
Hello fellow haskellers, how far does Yesod.Form protect you from invalid input? I'm particularly interested in what happens, when you submit invalid data to select fields or radio groups. Greets, Ertugrul -- nightmare = unsafePerformIO (getWrongWife = sex) http://ertes.de/

Re: [Haskell-cafe] Yesod: How safe are forms?

2011-06-11 Thread Michael Snoyman
For select/radio, the form will not validate. The same is true for most (all?) other fields. On Sun, Jun 12, 2011 at 2:35 AM, Ertugrul Soeylemez e...@ertes.de wrote: Hello fellow haskellers, how far does Yesod.Form protect you from invalid input?  I'm particularly interested in what happens,

Re: [Haskell-cafe] GHC7 build problem

2011-06-11 Thread Karel Gardas
On 06/11/11 09:37 PM, Edward Z. Yang wrote: Yes, the tree was broken for some time between yesterday and today, and you appear to have gotten unlikely. It should have been fixed now, so you should try again. It's probably not fixed yet, since even last night build fails on opensolaris