[Haskell-cafe] Functional programming techniques in small projects
Hello Community, I am a student from the University of Duisburg-Essen, Germany, and at the moment I am writing my bachelor thesis about "Post-Mass-Prodcution Softwaresupply/ -development in case of an University administration". This approach deals with student-driven software development in which functional programming techniques (ie, Haskell) and agile development approaches matter. I am looking for opinions and statements on how small (agile) software development projects may benefit from functional programming techniques (perhaps in contrast to imperative programming techniques). Since I am at the very start, I would appreciate further literature advices. In addition, does anybody know particular people who are familiar with this topic? Any answer is appreciated :-) Regards, Markus ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell-cafe] Haskell Bangalore
Hi, I was wondering if it would be a good idea for the folks interested in Haskell in Bangalore to get together. Especially if there are folks at EGL, perhaps we could just meet up at pyramid. I've been trying to learn Haskell for a while and currently am trying to work through SPJ's "implementation of Functional Programming languages". It would be good to bounce off ideas (in person) with like minded folks. -- Regards, Kashyap ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Haskell Indonesia
selamat datang! On Jun 18, 2010, at 9:27 PM, Jean-Denis Koeck wrote: > Hi! I'm of Indonesian descent (by my mother) and I'll be there this summer. > Nice to meet you! > > Jean-Denis > > 2010/6/15 vipex.id > Hi, I'm new in Haskell & wondering is there Indonesian people using Haskell > here. > > Nice meet* you all :) > > Regards, > vipex > > ___ > 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] new recursive do notation (ghc 6.12.x) spoils layout
On 20/06/2010 6:32 PM, Alexander Solla wrote: in your example c will not be in scope in the expression (let b = c >>= return . f) - that's the purpose of the recursive do construct (mdo, now "do .. rec ..") jvl On Jun 20, 2010, at 6:24 PM, Alexander Solla wrote: do a <- getChar let b = c >>= return . f let c = b >>= return . g c >>= putChar b Correction: by your construction, f and g are already in the Kliesli category, so you don't need the return compositions. I still don't know if the construction is admissible though. ___ 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] new recursive do notation (ghc 6.12.x) spoils layout
On Sunday 20 June 2010 9:24:54 pm Alexander Solla wrote: > Why can't you just use let notation do deal with the recursion? I > thought "lets" in do blocks were just a little bit of syntactic sugar > for "regular" let expressions, which do allow mutual recursion. I > could be totally wrong though. I'm thinking of something like: > > do a <- getChar > let b = c >>= return . f > let c = b >>= return . g > c >>= putChar > b This is not what recursive do does. For instance: do rec l <- (:l) <$> getChar return l will read one character, and return an infinite list with that character as the elements. By contrast: let l = (:) <$> getChar <*> l in l will, for one, never complete, and two, call getChar an infinite number of times. In general, it is based on the fixed point: mfix :: (MonadFix m) => (a -> m a) -> m a where the function given may not be separable into a pure function and return at all, which is what would be necessary to implement using let, via the identity: mfix (return . f) = return (fix f) The implementation of mfix is specific to the 'm' in question, not something you can write for all monads. -- Dan ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] new recursive do notation (ghc 6.12.x) spoils layout
On Jun 20, 2010, at 6:24 PM, Alexander Solla wrote: do a <- getChar let b = c >>= return . f let c = b >>= return . g c >>= putChar b Correction: by your construction, f and g are already in the Kliesli category, so you don't need the return compositions. I still don't know if the construction is admissible though.___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] new recursive do notation (ghc 6.12.x) spoils layout
On Jun 21, 2010, at 10:18 AM, John Lask wrote: do rec a <- getChar b <- f c c <- g b putChar c return b I don't particularly care that the only recursive statements are #2,#3 - I just want my nice neat layout back. I have just spent an inordinate amount of time updating code when if the parser recognised "do rec" as a recursive group it would have been a drop in replacement and taken me one tenth of the time. Why can't we have this? Why can't you just use let notation do deal with the recursion? I thought "lets" in do blocks were just a little bit of syntactic sugar for "regular" let expressions, which do allow mutual recursion. I could be totally wrong though. I'm thinking of something like: do a <- getChar let b = c >>= return . f let c = b >>= return . g c >>= putChar b___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] new recursive do notation (ghc 6.12.x) spoils layout
On 22 June 2010 03:18, John Lask wrote: > > I just want my nice neat layout back. I have just spent an inordinate amount > of time updating code when if the parser recognised "do rec" as a recursive > group it would have been a drop in replacement and taken me one tenth of the > time. > > Why can't we have this? At a guess: because no-one has implemented such functionality yet. Are you volunteering? :p -- 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
[Haskell-cafe] new recursive do notation (ghc 6.12.x) spoils layout
Whilst I have nothing against the change in syntax for recursive do aka http://old.nabble.com/Update-on-GHC-6.12.1-td26103595.html Instead of writing mdo a <- getChar b <- f c c <- g b putChar c return b you would write do a <- getChar rec { b <- f c ; c <- g b } putChar c return b it does spoil the nice layout - it would be nice to just be able to write (which does not parse) do rec a <- getChar b <- f c c <- g b putChar c return b I don't particularly care that the only recursive statements are #2,#3 - I just want my nice neat layout back. I have just spent an inordinate amount of time updating code when if the parser recognised "do rec" as a recursive group it would have been a drop in replacement and taken me one tenth of the time. Why can't we have this? ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] zlib or digest package installation
Daniel Kahlenberg writes: > Hi, > > when installing pandoc package, which has digest somewhere in > dependencies the usual cabal install stucks because zlib.h is missing, > so I explicitly installed zlib package first, then installing digest > (can also replace that directly with pandoc here) with the > --extra-include-dirs parameter set: > > Prelude System.Cmd> >> rawSystem "cabal" ["install", "digest", "-v3", "--user", "-- >> build-log=d:/temp/log/build-$$pkgid-$$compiler-msys.log", "--reinstall", >> "--data >> dir=$$prefix/haskell-pkgdata", >> "--extra-include-dirs=C:\\Users\\daniel\\AppData\ >> \Roaming\\cabal\\zlib-0.5.2.0\\ghc-6.12.1\\include"] > > Is there something to improve in one of the packages cabal file to > overcome the need to explicitly specify the header file locations of > already installed packages or is that a consequence of not installing > them as developer packages simply, so i. e. to have the header file > zlib.h at the specified location is more a bonus to have in that situation? I'm guessing that the problem is that you're installing the packages to a non-standard location, but I don't use Windows so I can't confirm or check this in any way. -- 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] Continuations and coroutines
On 20/06/10 22:03, Paul Johnson wrote: On 19/06/10 17:23, Yves Parès wrote: It helps me understand better, but would you have some simple code that would do that ? http://www.cs.chalmers.se/~koen/pubs/jfp99-monad.ps Except that the paper I'm trying to refer to seems to have fallen off the net. Its "A Poor Man's Concurrency Monad". Does anyone have a copy? Paul. ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Continuations and coroutines
On 19/06/10 17:23, Yves Parès wrote: It helps me understand better, but would you have some simple code that would do that ? http://www.cs.chalmers.se/~koen/pubs/jfp99-monad.ps Paul. ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Installing Haskell on OSX
On Sun, Jun 20, 2010 at 12:53 PM, Giuseppe Luigi Punzi Ruiz wrote: > Hi again, > > Yes, you are right, but now, "cabal install leksah" I get: > This one is a bummer, and I see it all the time when I try to build a package linked against macports. Here's the last thread about with, with more links and discussion: http://thread.gmane.org/gmane.comp.lang.haskell.general/18064/ The response by Jean-Marie Gaillourdet has worked for me in the past. Antoine > .. > .. > Linking dist/build/leksah-server/leksah-server ... > ld warning: atom sorting error for > _ghczm6zi12zi1_LibFFI_Czuffizucif_closure_tbl and > _ghczm6zi12zi1_LibFFI_Czuffizutype_closure_tbl in > /Library/Frameworks/GHC.framework/Versions/612/usr/lib/ghc-6.12.1/ghc-6.12.1/libHSghc-6.12.1.a(LibFFI.o) > ld warning: atom sorting error for > _ghczm6zi12zi1_LibFFI_Czuffizucif_closure_tbl and > _ghczm6zi12zi1_LibFFI_Czuffizutype_closure_tbl in > /Library/Frameworks/GHC.framework/Versions/612/usr/lib/ghc-6.12.1/ghc-6.12.1/libHSghc-6.12.1.a(LibFFI.o) > Undefined symbols: > "_iconv_close", referenced from: > _hs_iconv_close in libHSbase-4.2.0.0.a(iconv.o) > "_iconv_open", referenced from: > _hs_iconv_open in libHSbase-4.2.0.0.a(iconv.o) > "_iconv", referenced from: > _hs_iconv in libHSbase-4.2.0.0.a(iconv.o) > ld: symbol(s) not found > collect2: ld returned 1 exit status > cabal: Error: some packages failed to install: > gtksourceview2-0.11.0 failed during the configure step. The exception was: > ExitFailure 1 > leksah-0.8.0.6 depends on leksah-server-0.8.0.6 which failed to install. > leksah-server-0.8.0.6 failed during the building phase. The exception was: > ExitFailure 1 > > > El 20/06/2010, a las 17:29, Antoine Latter escribió: > >> On Sun, Jun 20, 2010 at 10:08 AM, Giuseppe Luigi Punzi Ruiz >> wrote: >>> >>> [1 of 2] Compiling Gtk2HsSetup ( >>> >>> /var/folders/fA/fAGWxnQMEFCzPAHcFpbaMk+++TI/-Tmp-/glib-0.11.096835/glib-0.11.0/Gtk2HsSetup.hs, >>> >>> /var/folders/fA/fAGWxnQMEFCzPAHcFpbaMk+++TI/-Tmp-/glib-0.11.096835/glib-0.11.0/dist/setup/Gtk2HsSetup.o >>> ) >>> [2 of 2] Compiling Main ( >>> >>> /var/folders/fA/fAGWxnQMEFCzPAHcFpbaMk+++TI/-Tmp-/glib-0.11.096835/glib-0.11.0/Setup.hs, >>> >>> /var/folders/fA/fAGWxnQMEFCzPAHcFpbaMk+++TI/-Tmp-/glib-0.11.096835/glib-0.11.0/dist/setup/Main.o >>> ) >>> Linking >>> >>> /var/folders/fA/fAGWxnQMEFCzPAHcFpbaMk+++TI/-Tmp-/glib-0.11.096835/glib-0.11.0/dist/setup/setup >>> ... >>> >>> /var/folders/fA/fAGWxnQMEFCzPAHcFpbaMk+++TI/-Tmp-/glib-0.11.096835/glib-0.11.0/dist/setup/setup >>> configure --verbose=2 --ghc --prefix=/Users/glpunzi/.cabal --user >>> --flags=closure_signals --constraint=base ==4.2.0.0 >>> --constraint=containers >>> ==0.3.0.0 --constraint=haskell98 ==1.0.1.1 >>> Configuring glib-0.11.0... >>> Flags chosen: closure_signals=True >>> Dependency base ==4.2.0.0: using base-4.2.0.0 >>> Dependency containers ==0.3.0.0: using containers-0.3.0.0 >>> Dependency haskell98 ==1.0.1.1: using haskell98-1.0.1.1 >>> setup: gtk2hsC2hs is required but it could not be found. >>> cabal: Error: some packages failed to install: >>> glib-0.11.0 failed during the configure step. The exception was: >>> ExitFailure 1 >>> galilea-2:haskell-platform-2010.1.0.0 glpunzi$ >>> >>> >>> If i do: cabal list gtk2hs-buildtools >>> >>> galilea-2:haskell-platform-2010.1.0.0 glpunzi$ cabal list >>> gtk2hs-buildtools >>> * gtk2hs-buildtools >>> Synopsis: Tools to build the Gtk2Hs suite of User Interface libraries. >>> Latest version available: 0.9 >>> Latest version installed: [ Not installed ] >>> Homepage: http://www.haskell.org/gtk2hs/ >>> License: GPL (Just (Version {versionBranch = [2], versionTags = []})) >>> >>> It's the second time I install it. It suppose install succesfully. >>> >>> * >>> cabal install gtk2hs-buildtools >>> >>> [38 of 41] Compiling C ( c2hs/c/C.hs, >>> dist/build/gtk2hsC2hs/gtk2hsC2hs-tmp/C.o ) >>> [39 of 41] Compiling GBMonad ( c2hs/gen/GBMonad.hs, >>> dist/build/gtk2hsC2hs/gtk2hsC2hs-tmp/GBMonad.o ) >>> [40 of 41] Compiling GenBind ( c2hs/gen/GenBind.hs, >>> dist/build/gtk2hsC2hs/gtk2hsC2hs-tmp/GenBind.o ) >>> [41 of 41] Compiling Main ( c2hs/toplevel/Main.hs, >>> dist/build/gtk2hsC2hs/gtk2hsC2hs-tmp/Main.o ) >>> Linking dist/build/gtk2hsC2hs/gtk2hsC2hs ... >>> Installing executable(s) in /Users/glpunzi/.cabal/bin >>> >> >> Here we've installed gtk2hsC2hs in /Users/glpunzi/.cabal/bin. If that >> isn't in your path, it won't be available for 'glib' to use during its >> install. >> >>> >>> El 20/06/2010, a las 17:01, Antoine Latter escribió: >>> cabal install glib -v >>> >>> Giuseppe Luigi Punzi Ruiz >>> Blog: http://www.lordzealon.com >>> Twitter & Skype & GoogleTalk accounts: glpunzi >>> >>> >>> >>> >>> >>> > > Giuseppe Luigi Punzi Ruiz > Blog: http://www.lordzealon.com > Twitter & Skype & GoogleTalk accounts: glpunzi > > > > > > ___ Haskel
Re: [Haskell-cafe] Installing Haskell on OSX
Hi again, Yes, you are right, but now, "cabal install leksah" I get: .. .. Linking dist/build/leksah-server/leksah-server ... ld warning: atom sorting error for _ghczm6zi12zi1_LibFFI_Czuffizucif_closure_tbl and _ghczm6zi12zi1_LibFFI_Czuffizutype_closure_tbl in /Library/Frameworks/ GHC.framework/Versions/612/usr/lib/ghc-6.12.1/ghc-6.12.1/ libHSghc-6.12.1.a(LibFFI.o) ld warning: atom sorting error for _ghczm6zi12zi1_LibFFI_Czuffizucif_closure_tbl and _ghczm6zi12zi1_LibFFI_Czuffizutype_closure_tbl in /Library/Frameworks/ GHC.framework/Versions/612/usr/lib/ghc-6.12.1/ghc-6.12.1/ libHSghc-6.12.1.a(LibFFI.o) Undefined symbols: "_iconv_close", referenced from: _hs_iconv_close in libHSbase-4.2.0.0.a(iconv.o) "_iconv_open", referenced from: _hs_iconv_open in libHSbase-4.2.0.0.a(iconv.o) "_iconv", referenced from: _hs_iconv in libHSbase-4.2.0.0.a(iconv.o) ld: symbol(s) not found collect2: ld returned 1 exit status cabal: Error: some packages failed to install: gtksourceview2-0.11.0 failed during the configure step. The exception was: ExitFailure 1 leksah-0.8.0.6 depends on leksah-server-0.8.0.6 which failed to install. leksah-server-0.8.0.6 failed during the building phase. The exception was: ExitFailure 1 El 20/06/2010, a las 17:29, Antoine Latter escribió: On Sun, Jun 20, 2010 at 10:08 AM, Giuseppe Luigi Punzi Ruiz wrote: [1 of 2] Compiling Gtk2HsSetup ( /var/folders/fA/fAGWxnQMEFCzPAHcFpbaMk+++TI/-Tmp-/glib-0.11.096835/ glib-0.11.0/Gtk2HsSetup.hs, /var/folders/fA/fAGWxnQMEFCzPAHcFpbaMk+++TI/-Tmp-/glib-0.11.096835/ glib-0.11.0/dist/setup/Gtk2HsSetup.o ) [2 of 2] Compiling Main ( /var/folders/fA/fAGWxnQMEFCzPAHcFpbaMk+++TI/-Tmp-/glib-0.11.096835/ glib-0.11.0/Setup.hs, /var/folders/fA/fAGWxnQMEFCzPAHcFpbaMk+++TI/-Tmp-/glib-0.11.096835/ glib-0.11.0/dist/setup/Main.o ) Linking /var/folders/fA/fAGWxnQMEFCzPAHcFpbaMk+++TI/-Tmp-/glib-0.11.096835/ glib-0.11.0/dist/setup/setup ... /var/folders/fA/fAGWxnQMEFCzPAHcFpbaMk+++TI/-Tmp-/glib-0.11.096835/ glib-0.11.0/dist/setup/setup configure --verbose=2 --ghc --prefix=/Users/glpunzi/.cabal --user --flags=closure_signals --constraint=base ==4.2.0.0 -- constraint=containers ==0.3.0.0 --constraint=haskell98 ==1.0.1.1 Configuring glib-0.11.0... Flags chosen: closure_signals=True Dependency base ==4.2.0.0: using base-4.2.0.0 Dependency containers ==0.3.0.0: using containers-0.3.0.0 Dependency haskell98 ==1.0.1.1: using haskell98-1.0.1.1 setup: gtk2hsC2hs is required but it could not be found. cabal: Error: some packages failed to install: glib-0.11.0 failed during the configure step. The exception was: ExitFailure 1 galilea-2:haskell-platform-2010.1.0.0 glpunzi$ If i do: cabal list gtk2hs-buildtools galilea-2:haskell-platform-2010.1.0.0 glpunzi$ cabal list gtk2hs- buildtools * gtk2hs-buildtools Synopsis: Tools to build the Gtk2Hs suite of User Interface libraries. Latest version available: 0.9 Latest version installed: [ Not installed ] Homepage: http://www.haskell.org/gtk2hs/ License: GPL (Just (Version {versionBranch = [2], versionTags = []})) It's the second time I install it. It suppose install succesfully. * cabal install gtk2hs-buildtools [38 of 41] Compiling C( c2hs/c/C.hs, dist/build/gtk2hsC2hs/gtk2hsC2hs-tmp/C.o ) [39 of 41] Compiling GBMonad ( c2hs/gen/GBMonad.hs, dist/build/gtk2hsC2hs/gtk2hsC2hs-tmp/GBMonad.o ) [40 of 41] Compiling GenBind ( c2hs/gen/GenBind.hs, dist/build/gtk2hsC2hs/gtk2hsC2hs-tmp/GenBind.o ) [41 of 41] Compiling Main ( c2hs/toplevel/Main.hs, dist/build/gtk2hsC2hs/gtk2hsC2hs-tmp/Main.o ) Linking dist/build/gtk2hsC2hs/gtk2hsC2hs ... Installing executable(s) in /Users/glpunzi/.cabal/bin Here we've installed gtk2hsC2hs in /Users/glpunzi/.cabal/bin. If that isn't in your path, it won't be available for 'glib' to use during its install. El 20/06/2010, a las 17:01, Antoine Latter escribió: cabal install glib -v Giuseppe Luigi Punzi Ruiz Blog: http://www.lordzealon.com Twitter & Skype & GoogleTalk accounts: glpunzi Giuseppe Luigi Punzi Ruiz Blog: http://www.lordzealon.com Twitter & Skype & GoogleTalk accounts: glpunzi ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell-cafe] zlib or digest package installation
Hi, when installing pandoc package, which has digest somewhere in dependencies the usual cabal install stucks because zlib.h is missing, so I explicitly installed zlib package first, then installing digest (can also replace that directly with pandoc here) with the --extra-include-dirs parameter set: Prelude System.Cmd> > rawSystem "cabal" ["install", "digest", "-v3", "--user", "-- > build-log=d:/temp/log/build-$$pkgid-$$compiler-msys.log", "--reinstall", > "--data > dir=$$prefix/haskell-pkgdata", > "--extra-include-dirs=C:\\Users\\daniel\\AppData\ > \Roaming\\cabal\\zlib-0.5.2.0\\ghc-6.12.1\\include"] Is there something to improve in one of the packages cabal file to overcome the need to explicitly specify the header file locations of already installed packages or is that a consequence of not installing them as developer packages simply, so i. e. to have the header file zlib.h at the specified location is more a bonus to have in that situation? Greetz Daniel ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Installing Haskell on OSX
On Sun, Jun 20, 2010 at 10:08 AM, Giuseppe Luigi Punzi Ruiz wrote: > [1 of 2] Compiling Gtk2HsSetup ( > /var/folders/fA/fAGWxnQMEFCzPAHcFpbaMk+++TI/-Tmp-/glib-0.11.096835/glib-0.11.0/Gtk2HsSetup.hs, > /var/folders/fA/fAGWxnQMEFCzPAHcFpbaMk+++TI/-Tmp-/glib-0.11.096835/glib-0.11.0/dist/setup/Gtk2HsSetup.o > ) > [2 of 2] Compiling Main ( > /var/folders/fA/fAGWxnQMEFCzPAHcFpbaMk+++TI/-Tmp-/glib-0.11.096835/glib-0.11.0/Setup.hs, > /var/folders/fA/fAGWxnQMEFCzPAHcFpbaMk+++TI/-Tmp-/glib-0.11.096835/glib-0.11.0/dist/setup/Main.o > ) > Linking > /var/folders/fA/fAGWxnQMEFCzPAHcFpbaMk+++TI/-Tmp-/glib-0.11.096835/glib-0.11.0/dist/setup/setup > ... > /var/folders/fA/fAGWxnQMEFCzPAHcFpbaMk+++TI/-Tmp-/glib-0.11.096835/glib-0.11.0/dist/setup/setup > configure --verbose=2 --ghc --prefix=/Users/glpunzi/.cabal --user > --flags=closure_signals --constraint=base ==4.2.0.0 --constraint=containers > ==0.3.0.0 --constraint=haskell98 ==1.0.1.1 > Configuring glib-0.11.0... > Flags chosen: closure_signals=True > Dependency base ==4.2.0.0: using base-4.2.0.0 > Dependency containers ==0.3.0.0: using containers-0.3.0.0 > Dependency haskell98 ==1.0.1.1: using haskell98-1.0.1.1 > setup: gtk2hsC2hs is required but it could not be found. > cabal: Error: some packages failed to install: > glib-0.11.0 failed during the configure step. The exception was: > ExitFailure 1 > galilea-2:haskell-platform-2010.1.0.0 glpunzi$ > > > If i do: cabal list gtk2hs-buildtools > > galilea-2:haskell-platform-2010.1.0.0 glpunzi$ cabal list gtk2hs-buildtools > * gtk2hs-buildtools > Synopsis: Tools to build the Gtk2Hs suite of User Interface libraries. > Latest version available: 0.9 > Latest version installed: [ Not installed ] > Homepage: http://www.haskell.org/gtk2hs/ > License: GPL (Just (Version {versionBranch = [2], versionTags = []})) > > It's the second time I install it. It suppose install succesfully. > > * > cabal install gtk2hs-buildtools > > [38 of 41] Compiling C ( c2hs/c/C.hs, > dist/build/gtk2hsC2hs/gtk2hsC2hs-tmp/C.o ) > [39 of 41] Compiling GBMonad ( c2hs/gen/GBMonad.hs, > dist/build/gtk2hsC2hs/gtk2hsC2hs-tmp/GBMonad.o ) > [40 of 41] Compiling GenBind ( c2hs/gen/GenBind.hs, > dist/build/gtk2hsC2hs/gtk2hsC2hs-tmp/GenBind.o ) > [41 of 41] Compiling Main ( c2hs/toplevel/Main.hs, > dist/build/gtk2hsC2hs/gtk2hsC2hs-tmp/Main.o ) > Linking dist/build/gtk2hsC2hs/gtk2hsC2hs ... > Installing executable(s) in /Users/glpunzi/.cabal/bin > Here we've installed gtk2hsC2hs in /Users/glpunzi/.cabal/bin. If that isn't in your path, it won't be available for 'glib' to use during its install. > > El 20/06/2010, a las 17:01, Antoine Latter escribió: > >> cabal install glib -v > > Giuseppe Luigi Punzi Ruiz > Blog: http://www.lordzealon.com > Twitter & Skype & GoogleTalk accounts: glpunzi > > > > > > ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Installing Haskell on OSX
[1 of 2] Compiling Gtk2HsSetup ( /var/folders/fA/ fAGWxnQMEFCzPAHcFpbaMk+++TI/-Tmp-/glib-0.11.096835/glib-0.11.0/ Gtk2HsSetup.hs, /var/folders/fA/fAGWxnQMEFCzPAHcFpbaMk+++TI/-Tmp-/ glib-0.11.096835/glib-0.11.0/dist/setup/Gtk2HsSetup.o ) [2 of 2] Compiling Main ( /var/folders/fA/ fAGWxnQMEFCzPAHcFpbaMk+++TI/-Tmp-/glib-0.11.096835/glib-0.11.0/ Setup.hs, /var/folders/fA/fAGWxnQMEFCzPAHcFpbaMk+++TI/-Tmp-/ glib-0.11.096835/glib-0.11.0/dist/setup/Main.o ) Linking /var/folders/fA/fAGWxnQMEFCzPAHcFpbaMk+++TI/-Tmp-/ glib-0.11.096835/glib-0.11.0/dist/setup/setup ... /var/folders/fA/fAGWxnQMEFCzPAHcFpbaMk+++TI/-Tmp-/glib-0.11.096835/ glib-0.11.0/dist/setup/setup configure --verbose=2 --ghc --prefix=/Users/glpunzi/.cabal --user --flags=closure_signals --constraint=base ==4.2.0.0 -- constraint=containers ==0.3.0.0 --constraint=haskell98 ==1.0.1.1 Configuring glib-0.11.0... Flags chosen: closure_signals=True Dependency base ==4.2.0.0: using base-4.2.0.0 Dependency containers ==0.3.0.0: using containers-0.3.0.0 Dependency haskell98 ==1.0.1.1: using haskell98-1.0.1.1 setup: gtk2hsC2hs is required but it could not be found. cabal: Error: some packages failed to install: glib-0.11.0 failed during the configure step. The exception was: ExitFailure 1 galilea-2:haskell-platform-2010.1.0.0 glpunzi$ If i do: cabal list gtk2hs-buildtools galilea-2:haskell-platform-2010.1.0.0 glpunzi$ cabal list gtk2hs- buildtools * gtk2hs-buildtools Synopsis: Tools to build the Gtk2Hs suite of User Interface libraries. Latest version available: 0.9 Latest version installed: [ Not installed ] Homepage: http://www.haskell.org/gtk2hs/ License: GPL (Just (Version {versionBranch = [2], versionTags = []})) It's the second time I install it. It suppose install succesfully. * cabal install gtk2hs-buildtools [38 of 41] Compiling C( c2hs/c/C.hs, dist/build/ gtk2hsC2hs/gtk2hsC2hs-tmp/C.o ) [39 of 41] Compiling GBMonad ( c2hs/gen/GBMonad.hs, dist/ build/gtk2hsC2hs/gtk2hsC2hs-tmp/GBMonad.o ) [40 of 41] Compiling GenBind ( c2hs/gen/GenBind.hs, dist/ build/gtk2hsC2hs/gtk2hsC2hs-tmp/GenBind.o ) [41 of 41] Compiling Main ( c2hs/toplevel/Main.hs, dist/ build/gtk2hsC2hs/gtk2hsC2hs-tmp/Main.o ) Linking dist/build/gtk2hsC2hs/gtk2hsC2hs ... Installing executable(s) in /Users/glpunzi/.cabal/bin El 20/06/2010, a las 17:01, Antoine Latter escribió: cabal install glib -v Giuseppe Luigi Punzi Ruiz Blog: http://www.lordzealon.com Twitter & Skype & GoogleTalk accounts: glpunzi ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Installing Haskell on OSX
On Sun, Jun 20, 2010 at 9:49 AM, Giuseppe Luigi Punzi Ruiz wrote: > WTF! > > Sorry for the mistake in the title, is the problem of doing 124 different > things at the same time :P It looks like it is failing to install the 'glib' haskell package. What do you see when you try: cabal install glib -v Thanks, Antoine > > El 20/06/2010, a las 16:28, Giuseppe Luigi Punzi Ruiz escribió: > >> Hi all, >> >> I would like to play a little with erlang. >> >> I downloaded Haskell platform, ang ghc and ghci seems to work. Trying to >> install leksah, Cabal, gives me the following error. >> >> http://trac.haskell.org/haskell-platform/ticket/110 >> >> I downloaded and installed Haskell Platform from source. Did.. >> cabal update >> cabal install cabal-install >> cabal install gtk2hs-buildtools >> cabal install leksah >> >> The last command didn't finish, with this output: >> >> >> .. >> ... >> [22 of 23] Compiling Text.Regex.TDFA.Sequence ( >> Text/Regex/TDFA/Sequence.hs, dist/build/Text/Regex/TDFA/Sequence.o ) >> >> Text/Regex/TDFA/Sequence.hs:36:9: >> Warning: orphan instance: >> instance RegexContext Regex (Seq Char) (Seq Char) >> >> Text/Regex/TDFA/Sequence.hs:40:9: >> Warning: orphan instance: >> instance RegexMaker Regex CompOption ExecOption (Seq Char) >> >> Text/Regex/TDFA/Sequence.hs:46:9: >> Warning: orphan instance: instance RegexLike Regex (Seq Char) >> [23 of 23] Compiling Text.Regex.TDFA ( Text/Regex/TDFA.hs, >> dist/build/Text/Regex/TDFA.o ) >> Registering regex-tdfa-1.1.3... >> Installing library in >> /Users/glpunzi/.cabal/lib/regex-tdfa-1.1.3/ghc-6.12.1 >> Registering regex-tdfa-1.1.3... >> cabal: Error: some packages failed to install: >> cairo-0.11.0 failed during the configure step. The exception was: >> ExitFailure 1 >> gio-0.11.0 depends on glib-0.11.0 which failed to install. >> glib-0.11.0 failed during the configure step. The exception was: >> ExitFailure 1 >> gtk-0.11.0 depends on glib-0.11.0 which failed to install. >> gtksourceview2-0.11.0 depends on glib-0.11.0 which failed to install. >> leksah-0.8.0.6 depends on glib-0.11.0 which failed to install. >> leksah-server-0.8.0.6 depends on glib-0.11.0 which failed to install. >> ltk-0.8.0.6 depends on glib-0.11.0 which failed to install. >> pango-0.11.0 depends on glib-0.11.0 which failed to install. >> >> >> Possible usefull info: >> galilea-2:haskell-platform-2010.1.0.0 glpunzi$ cabal --version >> cabal-install version 0.8.0 >> using version 1.8.0.2 of the Cabal library >> galilea-2:haskell-platform-2010.1.0.0 glpunzi$ ghc --version >> The Glorious Glasgow Haskell Compilation System, version 6.12.1 >> >> Some idea how to get leskah, or/and full Haskell working under OSX? >> >> Thanks in advance. >> >> Giuseppe Luigi Punzi Ruiz >> Blog: http://www.lordzealon.com >> Twitter & Skype & GoogleTalk accounts: glpunzi >> >> >> >> >> >> ___ >> Haskell-Cafe mailing list >> Haskell-Cafe@haskell.org >> http://www.haskell.org/mailman/listinfo/haskell-cafe > > Giuseppe Luigi Punzi Ruiz > Blog: http://www.lordzealon.com > Twitter & Skype & GoogleTalk accounts: glpunzi > > > > > > ___ > 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] Installing Haskell on OSX
WTF! Sorry for the mistake in the title, is the problem of doing 124 different things at the same time :P El 20/06/2010, a las 16:28, Giuseppe Luigi Punzi Ruiz escribió: Hi all, I would like to play a little with erlang. I downloaded Haskell platform, ang ghc and ghci seems to work. Trying to install leksah, Cabal, gives me the following error. http://trac.haskell.org/haskell-platform/ticket/110 I downloaded and installed Haskell Platform from source. Did.. cabal update cabal install cabal-install cabal install gtk2hs-buildtools cabal install leksah The last command didn't finish, with this output: .. ... [22 of 23] Compiling Text.Regex.TDFA.Sequence ( Text/Regex/TDFA/ Sequence.hs, dist/build/Text/Regex/TDFA/Sequence.o ) Text/Regex/TDFA/Sequence.hs:36:9: Warning: orphan instance: instance RegexContext Regex (Seq Char) (Seq Char) Text/Regex/TDFA/Sequence.hs:40:9: Warning: orphan instance: instance RegexMaker Regex CompOption ExecOption (Seq Char) Text/Regex/TDFA/Sequence.hs:46:9: Warning: orphan instance: instance RegexLike Regex (Seq Char) [23 of 23] Compiling Text.Regex.TDFA ( Text/Regex/TDFA.hs, dist/ build/Text/Regex/TDFA.o ) Registering regex-tdfa-1.1.3... Installing library in /Users/glpunzi/.cabal/lib/regex-tdfa-1.1.3/ ghc-6.12.1 Registering regex-tdfa-1.1.3... cabal: Error: some packages failed to install: cairo-0.11.0 failed during the configure step. The exception was: ExitFailure 1 gio-0.11.0 depends on glib-0.11.0 which failed to install. glib-0.11.0 failed during the configure step. The exception was: ExitFailure 1 gtk-0.11.0 depends on glib-0.11.0 which failed to install. gtksourceview2-0.11.0 depends on glib-0.11.0 which failed to install. leksah-0.8.0.6 depends on glib-0.11.0 which failed to install. leksah-server-0.8.0.6 depends on glib-0.11.0 which failed to install. ltk-0.8.0.6 depends on glib-0.11.0 which failed to install. pango-0.11.0 depends on glib-0.11.0 which failed to install. Possible usefull info: galilea-2:haskell-platform-2010.1.0.0 glpunzi$ cabal --version cabal-install version 0.8.0 using version 1.8.0.2 of the Cabal library galilea-2:haskell-platform-2010.1.0.0 glpunzi$ ghc --version The Glorious Glasgow Haskell Compilation System, version 6.12.1 Some idea how to get leskah, or/and full Haskell working under OSX? Thanks in advance. Giuseppe Luigi Punzi Ruiz Blog: http://www.lordzealon.com Twitter & Skype & GoogleTalk accounts: glpunzi ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe Giuseppe Luigi Punzi Ruiz Blog: http://www.lordzealon.com Twitter & Skype & GoogleTalk accounts: glpunzi ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell-cafe] Installing Erlang on OSX
Hi all, I would like to play a little with erlang. I downloaded Haskell platform, ang ghc and ghci seems to work. Trying to install leksah, Cabal, gives me the following error. http://trac.haskell.org/haskell-platform/ticket/110 I downloaded and installed Haskell Platform from source. Did.. cabal update cabal install cabal-install cabal install gtk2hs-buildtools cabal install leksah The last command didn't finish, with this output: .. ... [22 of 23] Compiling Text.Regex.TDFA.Sequence ( Text/Regex/TDFA/ Sequence.hs, dist/build/Text/Regex/TDFA/Sequence.o ) Text/Regex/TDFA/Sequence.hs:36:9: Warning: orphan instance: instance RegexContext Regex (Seq Char) (Seq Char) Text/Regex/TDFA/Sequence.hs:40:9: Warning: orphan instance: instance RegexMaker Regex CompOption ExecOption (Seq Char) Text/Regex/TDFA/Sequence.hs:46:9: Warning: orphan instance: instance RegexLike Regex (Seq Char) [23 of 23] Compiling Text.Regex.TDFA ( Text/Regex/TDFA.hs, dist/build/ Text/Regex/TDFA.o ) Registering regex-tdfa-1.1.3... Installing library in /Users/glpunzi/.cabal/lib/regex-tdfa-1.1.3/ ghc-6.12.1 Registering regex-tdfa-1.1.3... cabal: Error: some packages failed to install: cairo-0.11.0 failed during the configure step. The exception was: ExitFailure 1 gio-0.11.0 depends on glib-0.11.0 which failed to install. glib-0.11.0 failed during the configure step. The exception was: ExitFailure 1 gtk-0.11.0 depends on glib-0.11.0 which failed to install. gtksourceview2-0.11.0 depends on glib-0.11.0 which failed to install. leksah-0.8.0.6 depends on glib-0.11.0 which failed to install. leksah-server-0.8.0.6 depends on glib-0.11.0 which failed to install. ltk-0.8.0.6 depends on glib-0.11.0 which failed to install. pango-0.11.0 depends on glib-0.11.0 which failed to install. Possible usefull info: galilea-2:haskell-platform-2010.1.0.0 glpunzi$ cabal --version cabal-install version 0.8.0 using version 1.8.0.2 of the Cabal library galilea-2:haskell-platform-2010.1.0.0 glpunzi$ ghc --version The Glorious Glasgow Haskell Compilation System, version 6.12.1 Some idea how to get leskah, or/and full Haskell working under OSX? Thanks in advance. Giuseppe Luigi Punzi Ruiz Blog: http://www.lordzealon.com Twitter & Skype & GoogleTalk accounts: glpunzi ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell-cafe] Third Ghent FPG Meeting on Tuesday, June 29: Final Program
(apologies if you receive multiple copies) Dear all, We have finalized the program for the third Ghent FPG Meeting on Tuesday, June 29 in the Technicum building of Ghent University (Sint-Pietersnieuwstraat 41, 9000 Gent) at 19h. As before, to enter the building, you should go to the automatic sliding door on the far left of the building and dial the phone number provided on the note that is taped to the door. Someone will then open the door for you. The program is as follows: 1. Pierre Carbonnelle - Declarative programming for Business Logic - a new Open-source project Declarative programming has made major inroads in the Presentation and Persistence layers of applications, with HTML, CSS and SQL. Why has it not been popular in the Business Logic layer of applications ? Pierre Carbonnelle, an engineer with 20 years of experience in the IT industry, will present a new open source project, "Yoopf", that aims to fix this gap. It uses the "formula- based" models of spreadsheets for the development of business applications, with a particular emphasis on the Google App Engine platform. Research opportunities will be discussed. 2. Tom Schrijvers - Monadic Constraint Programming A constraint programming system combines two essential components: a constraint solver and a search engine. The constraint solver reasons about satisfiability of conjunctions of constraints, and the search engine controls the search for solutions by iteratively exploring a disjunctive search tree defined by the constraint program. We give a monadic definition of constraint programming where the solver is defined as a monad threaded through the monadic search tree. We are then able to define search and search strategies as first class objects that can themselves be built or extended by composable search transformers. Search transformers give a powerful and unifying approach to viewing search in constraint programming, and the resulting constraint programming system is first class and extremely flexible. This is joint work with Peter Stuckey (University of Melbourne) and Philip Wadler (University of Edinburgh). 3. Wouter Kampmann, Lieven Lemiengre - Lightning Talk on Scala Hope to see you there! Bart Coppens (bart.copp...@elis.ugent.be) Jeroen Janssen (jejan...@gmail.com) Jasper Van der Jeugt (jasper...@gmail.com) The Ghent FPG organizing committee.___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Mapping a list of functions
I love that. It's great. Definitely going in my .ghci file. On 20 June 2010 12:28, Liam O'Connor wrote: > swing map :: forall a b. [a -> b] -> a -> [b] > swing any :: forall a. [a -> Bool] -> a -> Bool > swing foldr :: forall a b. b -> a -> [a -> b -> b] -> b > swing zipWith :: forall a b c. [a -> b -> c] -> a -> [b] -> [c] > swing find :: forall a. [a -> Bool] -> a -> Maybe (a -> Bool) > -- applies each of the predicates to the given value, returning the > first predicate which succeeds, if any > swing partition :: forall a. [a -> Bool] -> a -> ([a -> Bool], [a -> Bool]) > > > Essentially, the main use case seems to be transforming HOFs that > operate on a list of values and a single function into HOFs that > operate on a list of functions and a single value. > > Cheers. > ~Liam > > > > On 19 June 2010 19:30, Limestraël wrote: >> ??? >> What does exactly swing do ? >> >> 2010/6/18 Bulat Ziganshin >>> >>> Hello Martin, >>> >>> Thursday, June 17, 2010, 11:02:31 PM, you wrote: >>> >>> > But what if I want to apply a list of functions to a single argument. I >>> > can >>> >>> one more answer is "swing map": >>> >>> http://www.haskell.org/haskellwiki/Pointfree#Swing >>> >>> >>> >>> -- >>> Best regards, >>> Bulat mailto:bulat.zigans...@gmail.com >>> >>> ___ >>> 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 > ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Mapping a list of functions
swing map :: forall a b. [a -> b] -> a -> [b] swing any :: forall a. [a -> Bool] -> a -> Bool swing foldr :: forall a b. b -> a -> [a -> b -> b] -> b swing zipWith :: forall a b c. [a -> b -> c] -> a -> [b] -> [c] swing find :: forall a. [a -> Bool] -> a -> Maybe (a -> Bool) -- applies each of the predicates to the given value, returning the first predicate which succeeds, if any swing partition :: forall a. [a -> Bool] -> a -> ([a -> Bool], [a -> Bool]) Essentially, the main use case seems to be transforming HOFs that operate on a list of values and a single function into HOFs that operate on a list of functions and a single value. Cheers. ~Liam On 19 June 2010 19:30, Limestraël wrote: > ??? > What does exactly swing do ? > > 2010/6/18 Bulat Ziganshin >> >> Hello Martin, >> >> Thursday, June 17, 2010, 11:02:31 PM, you wrote: >> >> > But what if I want to apply a list of functions to a single argument. I >> > can >> >> one more answer is "swing map": >> >> http://www.haskell.org/haskellwiki/Pointfree#Swing >> >> >> >> -- >> Best regards, >> Bulat mailto:bulat.zigans...@gmail.com >> >> ___ >> 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] Re: How to browse code written by others
If you go this route, I will shamelessly promote hothasktags instead of ghci. It generates proper tags for qualified imports. What do you mean by "proper" here? I think Luke means that if you use qualified names then hothasktags can give you better location information than current ghci ctags. GHCi :ctags doesn't output tags for qualified names (though it probably should), but that isn't enough for proper handling of qualified imports. I believe hothasktags is meant to output multiple tags per target, one for each module referencing the target. But that would rely on scoped tags. I discussed this with Luke before and I sumarrized what would need to be done to imporove ghci ctags to support qualified names better. Here is the post which explains it with an example: http://permalink.gmane.org/gmane.comp.lang.haskell.cafe/73116 The problem with that example is that all occurrences of B.x point to b.hs and C.x always points to c.hs, so it doesn't test the scoping aspect of static tags. For instance, if you are in b.hs, and try ':tag C.x', you'll still be sent to c.hs, even though that isn't in scope (see also ':help tag-priority'). If I add a file d.hs that is the same as a.hs but with the qualifiers exchanged: module D () where import qualified B as C import qualified C as B localAct = do print B.x print C.x and try to add corresponding scoped tags by hand, then I don't see the scoping being taken into account (though my Vim is old 7.2 from August 2008). Depending on sort order of the tags file, either all B.x point to b.hs or all B.x point to c.hs. So, one either gets the wrong pointers in a.hs or in d.hs. I did not go to add this to ghci ctags since I barely ever use qualified names so it is a non-issue for me. Also propper support for scoped tags would include some vim macro which (on ^] key-press) tries to find a qualified name first and only after a failure it would try to find plain name without qualification. So if one wants to use it well he/she needs first select the name in visual mode and only then pres ^]. (Or one should use full ex commands for navigation like :tselect.) One could redefine 'iskeyword' to include '.', but that may not always be what one wants. haskellmode also uses a script, though not yet for ^]. Your suggested use-case for such a feature is interesting, but we're getting into an area where "live" calls to a scope resolution tool might make more sense. Och I would like to have a "vim" with full incremental parser for Haskell ... with things like AST being drawn in a pane, intellisense and completion on symbols but also on grammar/syntax, re-factoring options and all the goodies this could provide. It will not be a vim any more. Probably won't happen in my lifetime either but I can dream :) The main thing standing in the way is Bram's strict interpretation of ':help design-not'. It seems to be an overreaction to Emacs as an OS, wanting to keep Vim small and simple. Ironically, adding one standard portable way of communicating with external tools would allow to make Vim smaller (removing all those special case version of tool communication). And semantics-based editing is wanted in all languages. So the feature has been rising and is currently topping the votes:-) http://www.vim.org/sponsor/vote_results.php Just keep Vim for what it is good at, and add a way to interface with language-aware external tools doing the heavy lifting (the old Haskell refactorer had to use sockets for the Vim interface, the Emacs interface was rather simpler in that respect). Claus PS: Thanks for your vim support. You're welcome. ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe