Re: [Haskell-cafe] webcam library on github
On Fri, 2012-05-25 at 08:24 +0800, Conrad Parker wrote: I've downloaded and built this. I had to also download Claude Heiland-Allen's v4l2 source from gitorious, as that package does not seem to be on hackage (though his other related packages are). I guess your package won't build on hackage until v4l2 is uploaded ... You're right, I remember I had to do that too when I first started the thing. In any case I was able to run cabal sdist. It gave a warning about no Setup.hs file; I've sent you a pull request which adds this, and also relaxes some library constraints in the cabal file. Thanks! I will add your suggestions (probably tonight) with pleasure. Two questions: * you've set the license to GPL3, but the C libraries it builds on are LGPL-2.1 (libv4l2) and repa and the haskell bindings it uses are BSD3. GPL3 seems a bit restrictive for a library. The gpl is sort of my default license. I know it is a little restrictive, so if that keeps people (if any) from contributing, I will change the license. As far as I can see, I would be able to change it to lgpl then, but not to bsd. * the name hsimage is fairly broad, I'd suggest a simpler name like repa-v4l2. If you want to support other device APIs or add other software image processing routines, I think it would make more sense to put those in separate packages. That was indeed my intent. I first wanted something for image processing, but seeing that there was nothing like I wanted for webcams, I started doing that. I think your suggestion for a simpler name makes sense, will probably also do that. BTW, I could not find any more or less standard way to represent images in Haskell. Is there anything like that? I don't know if that would make sense except being able to interact with different potential imaging packages. Maybe it's good enough to just copy image data over in most cases. Thanks again for all your suggestions, that was very helpful! Christian ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Correspondence between libraries and modules
On Wed, May 23, 2012 at 9:44 PM, Gregg Lebovitz glebov...@gmail.com wrote: Rustom, I am drafting a document that captures some of the social norms from the comments on this list, mostly from Brandon and Wren. I have captured the discussion about module namespace and am sorting out the comments on the relationship between libraries and packages. My initial question to the list was to try an identify where Haskell is different from other open source distributions. From what I can tell, the issues are very similar. The module name space seems to have characteristics very similar to the include file hierarchy of linux distributions. If you have some spare cycles and would like to contribute, I think everyone would appreciate your help and effort Gregg Hi Gregg. One of the common complaints one gets from a first year programming student (and its now about 3 decades I dealing with these!) is: The compiler/interpreter etc HAS a BUG!!! So... While I am an old geezer with programming and functional programming -- doing, teaching, playing, implementing, or just plain thinking but -- I am too much of a noob to ghc to risk falling into the 1st year student trap above. Yes perhaps not a typical noob... Somethings are easier for me than the typical noob -- all the 'classical' good-stuff like pattern-matching, lambda-calculus, type-inferencing, polymorphism etc. And this is helpful to understand the 'modern good stuff' starting monads and onwards But then I get hit -- finding my way round hackage, installing with cabal etc -- even tho I'm an ol-time unix hacker and sysadmin-er. So I guess its best to assume (as of now) that I dont know the ropes rather than something is wrong/broken with them. O well... If the noob trap is one error playing it safe is probably another so here goes with me saying things that I (probably) know nothing about: 1. cabal was a beautiful system 10 years ago. Now its being forcibly scaled up 2 (3?) orders of magnitude and is creaking at the seams 2. There's too much conflicting suggestions out there on the web for a noob - use system install (eg apt-get) or use cabal - cabal in user area or system area etc - the problem is exponentiated by the absence of cabal uninstall ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] What is the difference between runhaskell and compile?
I have been using LDAP with GHC without a problem – I get this error often but the problems have been with the configuration of the OpenLDAP client library or the OpenLDAP server. We are all taking about LDAP-0.6.6? Which version of GHC are we talking about? (I don’t think I have tested this on GHC-7.4.1, and maybe the others haven’t either.) Chris From: haskell-cafe-boun...@haskell.org [mailto:haskell-cafe-boun...@haskell.org] On Behalf Of Brandon Allbery Sent: 25 May 2012 04:21 To: Magicloud Magiclouds Cc: Haskell-Cafe Subject: Re: [Haskell-cafe] What is the difference between runhaskell and compile? On Thu, May 24, 2012 at 11:05 PM, Magicloud Magiclouds magicloud.magiclo...@gmail.com wrote: Hi there, The code could not be simpler. Just ldapInit, ldapSimpleBind. I just found that the code works with ghci, too. So to sum up, ghci/runhaskell works, ghc not. A possibility that occurs to me: does it by any chance work with ghc -threaded? Perhaps the issue relates to the different behavior of the threaded runtime (which is used automatically by ghci/runghc). -- brandon s allbery allber...@gmail.com wandering unix systems administrator (available) (412) 475-9364 vm/sms ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Fundeps and overlapping instances
On Fri, May 25, 2012 at 7:06 AM, AntC anthony_clay...@clear.net.nz wrote: But it looks like the work SPJ pointed to is using closed style. If all they're trying to do is support HList and similar, I guess that's good enough. I tried to explain all this the best part of a year ago. (Admittedly my explanation was a bit turgid, re-reading it today. And not that I was saying anything that hadn't been said by others -- it's resurfaced several times.) Funny how GHC-central just barrels ahead and ignores all those ideas, apparently without explaining why. If you're referring to the NewAxioms work Simon linked to in the other thread, I don't see it explicitly stated that all instances have to be within a single module. Especially section 3.3 (Translation) of the pdf[1] seems to suggest otherwise. Though it also doesn't seem to be the same as what you're asking for. As far as I can tell, with NewAxioms, wherever you could currently have a type instance, you could instead have a type instance group. Within a group you could have unrestricted overlap with the first matching instance being selected, while between groups overlap would continue to be forbidden. Relative to explicit disequality guards it seems both more and less powerful: you couldn't have overlap between modules (but could still split instances among modules as long as they *don't* overlap), but overlap within a module would be more powerful (or at least more convenient). It seems vaguely similar to a paper on instance chains[2] I saw once. (Apologies in advance if any of this is inaccurate, I'm just going by what I can see.) [1] https://docs.google.com/open?id=0B1pOVvPp4fVdOTdjZjU0YWYtYTA5Yy00NmFkLTkxMWUtZmI0NmNhZTQwYzVl [2] http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.170.9113rep=rep1type=pdf ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] A functional programming solution for Mr and Mrs Hollingberry
On 24/05/2012 18:56, Andreas Pauley wrote: I've used quite a few OO languages. I like to think that I *am* an OO programmer. But this exercise struck me from the beginning as something where classes would add nothing but bulk. As a fan of Smalltalk, I have to say that the Smalltalk version confirmed this for me; a Smalltalk solution for this exercise could be a lot smaller than that one if it _didn't_ introduce new classes. Maybe this is an example of where we as an industry has been somewhat brainwashed. For many programmers it is difficult to envision coding pretty much anything without classes. Do you know of an exercise where classes would add value? Something fairly small, roughly similar in size to this exercise. I don't. I think the trouble is that classes don't add value in exercises of this size. Nor do any similarly heavyweight Haskell engineering features like polymorphism or typeclasses. Just write the program and have done with it. Hard-code everything and you'd end up in C# with something not much different from the Haskell solutions on Github (except for the usual heavy syntactic overhead of C#). I'd say many of the programmers in my heavily OO-centric organisation would do just this: experience shows us that simple == flexible more often than not. However, it becomes more interesting if the requirements are thought likely to change in the future. More product lines? More suppliers? More or fewer troublesome or premium ones? More rules affecting pricing? Based on what other fields? How much is configurable at runtime and how much requires programmer time and recompilation? Are you likely to try and re-sell a similar system to another client and, if so, do you want to share code across clients to cut your support and maintenance overheads? More input formats? More output formats? Summary reporting? Interfaces with other systems? This is where classes start to become worthwhile, as (with the right architecture) they let you add to the behaviour of the system without changing existing working code. Of course, you can get a similar level of flexibility in a functional setting but it looks different. In OO languages it's easy to add new subtypes but adding a new method to a base type is a pain (as each subtype has to be changed). Conversely in functional languages it's a pain to add new constructors to a datatype (as all your pattern matching and case expressions need alteration) but easy to add new functions operating on your datatypes. So this pushes me in different architectural directions in the two settings - I try and make expected new requirements involve adding classes in an OO language, but they should involve adding new functions in my Haskell programs. Cheers, David smime.p7s Description: S/MIME Cryptographic Signature ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Typed TemplateHaskell?
Its a much simpler thing, but I would like to see a template haskell library and quasi-quoter that used a monad transformer instead of just Q. On Thu, May 24, 2012 at 1:47 AM, Simon Peyton-Jones simo...@microsoft.comwrote: Maybe take a look at http://hackage.haskell.org/trac/ghc/blog/Template%20Haskell%20Proposal | -Original Message- | From: haskell-cafe-boun...@haskell.org [mailto:haskell-cafe- | boun...@haskell.org] On Behalf Of Tillmann Rendel | Sent: 23 May 2012 18:20 | To: Haskell Café | Subject: Re: [Haskell-cafe] Typed TemplateHaskell? | | Hi Ilya, | | Ilya Portnov wrote: | As far as can I see, using features of last GHC one could write typed | TH library relatively easily, and saving backwards compatibility. | | For example, now we have Q monad and Exp type in template-haskell | package. Let's imagine some new package, say typed-template-haskell, | with new TQ monad and new polymorphic type Exp :: * - *. Using last | GHC's features, one will easily write something like expr :: Exp | String, which will mean that expr represents a string expression. | And we will need a new function, say runTQ :: TQ a - Q a (or some | more complicated type), which will turn TypedTemplateHaskell's | constructs into plain TH. | | That would be a good thing to have. But it might be quite hard to | implement. For example, I guess you might want to have functions like | this one: | |apply :: Exp (a - b) - Exp a - Exp b | | This function takes two typed expressions and produces an application. | The types ensure that the generated application will typecheck. Cool. | | But can you do the same thing for lambdas? Lambdas create functions, so | the type would be something like the following: | |lambda :: ... - Exp (a - b) | | But what would you put instead of the ...? | | I fear that overall, you would have to reimplement Haskell's type system | in Haskell's type system. Which sounds like a cool thing to do, but | maybe not so easily. | |Tillmann | | ___ | 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 ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Problem with packet documentation generated by cabal on windows 7
I’m having the same problem on my Windows 7 laptop. The solution I’ve found is to use Internet Explorer — it isn’t perfect, but for some reason it is the only browser capable of handling these links. On Fri, May 25, 2012 at 01:19:11AM +0200, Nicu Ionita wrote: Hi cafe, I have a problem with haddock documentation created when installing new packages with cabal on windows. The generated html files have all links in the form j:\Users\...\doc\...\xxx.html, but firefox says, it cannot open that link. Actually all links should be prefixed by file:///. I wonder if this is only on windows so and if there is a solution to this. Is there a cabal or haddock flag for this? ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] webcam library on github
On Fri, May 25, 2012 at 3:07 AM, . ch.go...@googlemail.com wrote: The gpl is sort of my default license. I know it is a little restrictive, so if that keeps people (if any) from contributing, I will change the license. As far as I can see, I would be able to change it to lgpl then, but not to bsd. I'm no lawyer, but my understanding is that the code is yours and you are free to license it however you want. If you choose to license your code as BSD and depend on LGPL code, then *your users* are bound by both the BSD And LGPL licenses, which is effectively as bad as being bound by the LGPL. Your portion of the code is still BSD-licensed, though. The distinction would probably be more evident if someone then made a BSD replacement for your dependencies, in which case they would no longer be bound by the LGPL terms if they used your library. The Haskell community does seem to have a cultural attachment to more permissive licenses, so you'll likely see a lot more adoption if you do use BSD, but it's obviously up to you. -Dan ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell-cafe] Template Haskell antiquotation in user-defined quasiquoters
Template Haskell supports antiquotation for built-in quasiquotes, e.g.: [| \x - x + $([|3 * 4|]) |] However, as far as I can tell, there is no way of supporting antiquotation in user-defined quasiquoters, because the only way to specify a new quasiquoter is through a quoteExp function of type String - Q Exp. Of course, it is perfectly possible to write a parser for some fragment of Haskell inside your quoteExp function, but that seems crazy given that Template Haskell or rather GHC already implements a parser for the whole language. I know about Language.Haskell.Exts.Parser in haskell-src-exts, which provides parseExp :: String - ParseResult Exp, but that Exp is a different type to the one provided by Template Haskell.http://hackage.haskell.org/packages/archive/haskell-src-exts/1.9.0/doc/html/Language-Haskell-Exts-Syntax.html#t:Exp I'm also aware of Dominic Orchard's syntax-trees package, which supports converting between the two representations using a cunning hack that pretty-prints the haskell-src-exts representation to a string and uses Template Haskell to parse it back. Is there a saner way of simulating antiquotation in user-defined quasiquoters? Sam -- The University of Edinburgh is a charitable body, registered in Scotland, with registration number SC005336. ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Template Haskell antiquotation in user-defined quasiquoters
On Fri, May 25, 2012 at 2:51 PM, Sam Lindley sam.lind...@ed.ac.uk wrote: Template Haskell supports antiquotation for built-in quasiquotes, e.g.: [| \x - x + $([|3 * 4|]) |] However, as far as I can tell, there is no way of supporting antiquotation in user-defined quasiquoters, because the only way to specify a new quasiquoter is through a quoteExp function of type String - Q Exp. Of course, it is perfectly possible to write a parser for some fragment of Haskell inside your quoteExp function, but that seems crazy given that Template Haskell or rather GHC already implements a parser for the whole language. I know about Language.Haskell.Exts.Parser in haskell-src-exts, which provides parseExp :: String - ParseResult Exp, but that Exp is a different type to the one provided by Template Haskell.http://hackage.haskell.org/packages/archive/haskell-src-exts/1.9.0/doc/html/Language-Haskell-Exts-Syntax.html#t:Exp I'm also aware of Dominic Orchard's syntax-trees package, which supports converting between the two representations using a cunning hack that pretty-prints the haskell-src-exts representation to a string and uses Template Haskell to parse it back. Is there a saner way of simulating antiquotation in user-defined quasiquoters? Have you looked at: http://hackage.haskell.org/package/haskell-src-exts-qq http://hackage.haskell.org/package/haskell-src-meta The might help you pull something together. Antoine Sam -- The University of Edinburgh is a charitable body, registered in Scotland, with registration number SC005336. ___ 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] Template Haskell antiquotation in user-defined quasiquoters
On 05/25/2012 21:46, Antoine Latter wrote: On Fri, May 25, 2012 at 2:51 PM, Sam Lindley sam.lind...@ed.ac.uk wrote: Template Haskell supports antiquotation for built-in quasiquotes, e.g.: [| \x - x + $([|3 * 4|]) |] However, as far as I can tell, there is no way of supporting antiquotation in user-defined quasiquoters, because the only way to specify a new quasiquoter is through a quoteExp function of type String - Q Exp. Of course, it is perfectly possible to write a parser for some fragment of Haskell inside your quoteExp function, but that seems crazy given that Template Haskell or rather GHC already implements a parser for the whole language. I know about Language.Haskell.Exts.Parser in haskell-src-exts, which provides parseExp :: String - ParseResult Exp, but that Exp is a different type to the one provided by Template Haskell.http://hackage.haskell.org/packages/archive/haskell-src-exts/1.9.0/doc/html/Language-Haskell-Exts-Syntax.html#t:Exp I'm also aware of Dominic Orchard's syntax-trees package, which supports converting between the two representations using a cunning hack that pretty-prints the haskell-src-exts representation to a string and uses Template Haskell to parse it back. Is there a saner way of simulating antiquotation in user-defined quasiquoters? Have you looked at: http://hackage.haskell.org/package/haskell-src-exts-qq http://hackage.haskell.org/package/haskell-src-meta The might help you pull something together. Antoine Sam I use haskell-src-meta in language-c-quote (also on hackage) to support antiquotation and heartily endorse it. I have not used haskell-src-exts-qq. Geoff ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] webcam library on github
Hi there, On 25/05/12 08:07, . wrote: On Fri, 2012-05-25 at 08:24 +0800, Conrad Parker wrote: I've downloaded and built this. I had to also download Claude Heiland-Allen's v4l2 source from gitorious, as that package does not seem to be on hackage (though his other related packages are). I guess your package won't build on hackage until v4l2 is uploaded ... I've uploaded the 'v4l2' package to hackage now. When I initially wrote it last year I had hoped to use it as a base for something similar to 'repa-v4l2' and perhaps 'opengl-v4l2' (*). Alas, I don't have a pressing need to access v4l2 devices at the moment, so I don't expect there to be rapid development or even prompt bug fixes (unless people provide patches) - if someone more involved than I am at present in video devices + Haskell on Linux wants to take over the maintainership of these v4l2-related packages, let me know: https://gitorious.org/hsv4l2 Thanks, Claude (*) I had written some code along those lines, though all I can find at the moment is a screenshot (live webcam video, processed to generate an overlay and displayed using opengl): http://claudiusmaximus.goto10.org/g/haskell/v4l2hist.png ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Template Haskell antiquotation in user-defined quasiquoters
(oops, sorry, didn't do reply to all) I use haskell-src-meta in QuasiText (on hackage) also. It would certainly be nice to have native anti-quotations, but for now haskell-src-meta does a very good job. Mike On Sat, May 26, 2012 at 8:31 AM, Geoffrey Mainland mainl...@apeiron.netwrote: On 05/25/2012 21:46, Antoine Latter wrote: On Fri, May 25, 2012 at 2:51 PM, Sam Lindley sam.lind...@ed.ac.uk wrote: Template Haskell supports antiquotation for built-in quasiquotes, e.g.: [| \x - x + $([|3 * 4|]) |] However, as far as I can tell, there is no way of supporting antiquotation in user-defined quasiquoters, because the only way to specify a new quasiquoter is through a quoteExp function of type String - Q Exp. Of course, it is perfectly possible to write a parser for some fragment of Haskell inside your quoteExp function, but that seems crazy given that Template Haskell or rather GHC already implements a parser for the whole language. I know about Language.Haskell.Exts.Parser in haskell-src-exts, which provides parseExp :: String - ParseResult Exp, but that Exp is a different type to the one provided by Template Haskell. http://hackage.haskell.org/packages/archive/haskell-src-exts/1.9.0/doc/html/Language-Haskell-Exts-Syntax.html#t:Exp I'm also aware of Dominic Orchard's syntax-trees package, which supports converting between the two representations using a cunning hack that pretty-prints the haskell-src-exts representation to a string and uses Template Haskell to parse it back. Is there a saner way of simulating antiquotation in user-defined quasiquoters? Have you looked at: http://hackage.haskell.org/package/haskell-src-exts-qq http://hackage.haskell.org/package/haskell-src-meta The might help you pull something together. Antoine Sam I use haskell-src-meta in language-c-quote (also on hackage) to support antiquotation and heartily endorse it. I have not used haskell-src-exts-qq. Geoff ___ 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] Problem with packet documentation generated by cabal on windows 7
Am 25.05.2012 06:49, schrieb Magnus Therning: On Fri, May 25, 2012 at 01:19:11AM +0200, Nicu Ionita wrote: Hi cafe, I have a problem with haddock documentation created when installing new packages with cabal on windows. The generated html files have all links in the form j:\Users\...\doc\...\xxx.html, but firefox says, it cannot open that link. Actually all links should be prefixed by file:///. I wonder if this is only on windows so and if there is a solution to this. Is there a cabal or haddock flag for this? It might help to know what version of haddock you have. Here, on my Linux machine, all generated links are relative and hence contain no 'http://' or 'file:///' prefix. /M I have Haskell Platform 2011.2.0.1 and I assumed that haddock comes with it. Now I checked the version - it is 2.9.2 and cabal info tells me that the last version is 2.10.0 and that I don't have the package installed (?). Ok, now I see, haddock is that from the patform and I never install it with cabal... Nicu ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell-cafe] gona to join in haskell-cafe
Hello,friends! I come from China, wishing to enjoy haskell with you. -- 张晔 Dante.py 中山大学09级数学与应用数学专业 个人主页:http://dantepy.yslsg.org/ ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Correspondence between libraries and modules
Rustom: O well... If the noob trap is one error playing it safe is probably another so here goes with me saying things that I (probably) know nothing about: 1. cabal was a beautiful system 10 years ago. Now its being forcibly scaled up 2 (3?) orders of magnitude and is creaking at the seams The problem is, Cabal is not a package management system. The name gives it away: it is the Common Architecture for *Building* Applications and Libraries. Cabal is to Haskell how GNU autotools + make is to C: a thin wrapper that checks for dependencies and invokes the compiler. All that boring not-making-your-package-break-everything-else stuff belongs to the distribution maintainer, not Hackage and Cabal. 2. There's too much conflicting suggestions out there on the web for a noob - use system install (eg apt-get) or use cabal Use apt-get. Your distribution packages are usually new enough, have been tested thoroughly, and most importantly, do not conflict with each other. - cabal in user area or system area etc Installing with --user is usually the best, since they won't clobber system packages and if^H^Hwhen they do go wrong, you can simply rm -r ~/.ghc. For actual coding, it's better to use a sandboxing tool such as [cabal-dev][] instead. [cabal-dev]: http://hackage.haskell.org/package/cabal-dev - the problem is exponentiated by the absence of cabal uninstall See above. By the way, someone else a whole article about it: https://ivanmiljenovic.wordpress.com/2010/03/15/repeat-after-me-cabal-is-not-a-package-manager/ Hope that clears it up for you. Chris ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Problem with packet documentation generated by cabal on windows 7
On Fri, May 25, 2012 at 6:28 PM, Nicu Ionita nicu.ion...@acons.at wrote: I have Haskell Platform 2011.2.0.1 and I assumed that haddock comes with it. Now I checked the version - it is 2.9.2 and cabal info tells me that the last version is 2.10.0 and that I don't have the package installed (?). Ok, now I see, haddock is that from the patform and I never install it with cabal... Also 'cabal' doesn't track executables, only libraries. Antoine ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe