Re: Scope of committee (can we do *new* things?)
I think we all agree that in general, we should focus on existing language extensions that have an implementation, and expect language extensions to be implemented for them to be seriously considered for inclusion in the standard. But I think it would be wrong to turn this into a hard rule. Language extensions are usually looked at in isolation, whereas the standard is supposed to be a whole. There may be things that fit in well, are useful generalizations of extensions we want to adopt, and so on that are worth discussing. Also, extensions should perhaps be modified or changed in some cases. If we say in advance that we can only standardize things that GHC already implements, and only in exactly this way, then it is a bit too limiting, and this would be throwing away the chance to clean up a few issues. The other side of this is that if we really arrive at the conclusion that something should be different from the current GHC implementations in any significant way, we should at least try to get it implemented during, and not just after, the standardization process so that we can still get practical feedback, and to prevent ending up with a standard that will never be implemented. Also (I think I've said this before), we should keep in mind that the whole process for Haskell 2020 can have more outputs than just the new standard itself. We can make progress towards standardization of features in future versions of Haskell even if they don't yet make it. We can make statements that we would in principle like to see certain features in the standard, and identify the issues that currently prevent them from being included. Cheers, Andres On Thu, May 12, 2016 at 9:46 PM, Iavor Diatchkiwrote: > I disagree that we should be standardizing language features that have not > been implemented. > > I think having an implementation is important because: >1. the act of implementing a feature forces you to work out details that > you may not have thought of ahead of time. For example, for a small > syntactic extension, the implementation would have to work out how to fit it > in the grammar, and how to present the new feature in, say, error messages. >2. having an implementation allows users to try out the extension and > gain some empirical evidence that the extension is actually useful in > practice (this is hard to quantify, I know, but it is even harder if you > can't even use the extension at all). > > If some feature ends up being particularly useful, it could always be > standardized in the next iteration of the language, when we've gained some > experience using it in practice. > > -Iavor > > > > On Wed, May 11, 2016 at 11:17 AM, John Wiegley > wrote: >> >> > Gershom B writes: >> >> > While such changes should definitely be in scope, I do think that the >> > proper >> > mechanism would be to garner enough interest to get a patch into GHC >> > (whether through discussion on the -prime list or elsewhere) and have an >> > experimental implementation, even for syntax changes, before such >> > proposals >> > are considered ready for acceptance into a standard as such. >> >> Just a side note: This is often how the C++ committee proceeds as well: a >> language proposal with an experimental implementation is given much higher >> credence than paperware. However, they don't exclude paperware either. >> >> So I don't think we need to rely on implementation before considering a >> feature we all want, but I do agree that seeing a patch in GHC first >> allows >> for much testing and experimentation. >> >> -- >> John Wiegley GPG fingerprint = 4710 CF98 AF9B 327B B80F >> http://newartisans.com 60E1 46C4 BD1A 7AC1 4BA2 >> ___ >> Haskell-prime mailing list >> Haskell-prime@haskell.org >> http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-prime > > > > ___ > Haskell-prime mailing list > Haskell-prime@haskell.org > http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-prime > ___ Haskell-prime mailing list Haskell-prime@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-prime
Re: Are there GHC extensions we'd like to incorporate wholesale?
Hi. Just to add a few general points. There are different dimensions to evaluate GHC extensions for inclusion in the standard, and just making lists does not really reflect that. The two most important ones, I think, are: 1. Whether we think they're actually a good idea or not. 2. Whether we think they're feasible to specify in a sensible way. There are variations of these points (extensions that are perhaps possible to specify, but ugly in their current form; extensions that have subtle interactions with others; ...) In general, I am in favour on working on extensions for which we believe they're good ideas, and try to make progress, even if we cannot include them yet. So just as an example, if we think GADTs (and not just GADTSyntax) are in principle a good idea and should be in a future standard, then perhaps we can try to work out what exactly we feel would be needed to include them, but is still missing. Then even in times when no standardization process is active, people can look at this list of issues and try to work on them. I also think that we should be careful with straight-forward looking syntax extensions. Just because an extension is easy to specify should not make it an automatic accept either. The complexity of the language is already high. All this being said, I still have a personal list: BangPatterns ConstrainedClassMethods ConstraintKinds (?) Derive* (?) EmptyCase ExistentialQuantification ExplicitForAll ExplicitNamespaces ExtendedDefaultRules (?) FlexibleContexts FlexibleInstances GADTSyntax InstanceSigs KindSignatures NullaryTypeClasses Overloaded* (?) PartialTypeSignatures (?) RankNTypes ScopedTypeVariables StandaloneDeriving (?) TypeSynonymInstances TypeOperators (?) I probably forgot a few. For the ones listed with (?), I am aware of some problems, but I'd still be very happy to at least have some discussions about them and make some progress in the direction of future standardization, as I indicated above. Cheers, Andres On Tue, May 3, 2016 at 7:32 AM, M Farkas-Dyckwrote: > On 02/05/2016, Cale Gibbard wrote: >> Are there extensions which ought to stop being extensions? > >> It may also be best to leave the answer up to the implementations. It is much >> easier to argue for something like that once the extension has been on by >> default in GHC and all other implementations for a while and most everyone >> seems happy leaving it on. > > I think in many cases that would defeat the purpose of extensions. > ___ > Haskell-prime mailing list > Haskell-prime@haskell.org > http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-prime ___ Haskell-prime mailing list Haskell-prime@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-prime
Re: Infrastructure & Communication
Hi. I'm ok with the general proposals made by Herbert. I'm not a huge fan of github myself, but it seems like the most pragmatic choice right now, and I wouldn't know anything else that is clearly better, so I'm in favour. I'd somewhat prefer to have everything (wiki etc) in one place then, but I don't have strong opinions on this topic. Cheers, Andres ___ Haskell-prime mailing list Haskell-prime@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-prime
Re: Update on Haskell Prime reboot?
Hi. I've been talking to Herbert from time to time, and I know he's having a draft announcement lying around, and is still planning on properly starting the process soon, and has (this is my opinion, not his) just been falling into the trap of waiting for a "good moment" which then never comes. I'm personally still eager to get the discussions about a new standard started. While it's true that the old Haskell Prime committee has been doing good work in creating some sort of catalogue of issues and extensions at the time, it's still far from proper standardization. And indeed, I think the bulk of the work that goes into a new standard in my opinon is to work out all the corner cases and the actual specification of the extensions. It's less important which ones ultimately go in or stay out, but actually specfiying them properly is already going to be a good step forward. Cheers, Andres On Fri, Apr 22, 2016 at 7:55 PM, José Manuel Calderón Trillawrote: > Hi Richard, > >> As a concrete suggestion, I wonder if we should have two goals: >> >> 1. Write down an updated standard for Haskell. >> >> 2. Write down pre-standards for several extensions. > > I agree with both of these. It may even be useful to use goal 2 as a > stepping stone to determine what extensions should receive the extra > attention necessary (if any) to be part of goal 1. Were you thinking > that these pre-standards would look something like Mark Jones's > 'Typing Haskell in Haskell' paper? A simplified and clear > specification in the form of a Haskell program would go a long way in > clarifying the meaning of certain extensions. To use your example, you > could imagine an implementation of GADTs that forms the baseline of > what the GADT extension should mean (implementations should accept at > least what this one does). That might be too ambitious though. > > A lot of the 'obvious' extensions were discussed that last time the > Haskell Prime committee was active, so a lot of groundwork has been > laid already. The most important step right now is empowering people > to move forward with the process. > > Herbert Valerio Riedel is the chair of the reboot, and as such gets > final say on who is a member of the committee and any timeline for > deciding. That being said, I think the aim should be to have the > committee membership decided soon and start discussing what the > priorities should be. I'm partial to suggesting a face to face meeting > at ICFP, but realize that it is difficult for many to attend to ICFP. > > Cheers, > > José > > > On Fri, Apr 22, 2016 at 9:33 AM, Richard Eisenberg wrote: >> I stand by ready to debate standards and would enjoy moving this process >> forward. However, I'm not in a position where I can lead at the moment -- >> just too consumed by other tasks right now. >> >> As a concrete suggestion, I wonder if we should have two goals: >> >> 1. Write down an updated standard for Haskell. >> >> 2. Write down pre-standards for several extensions. >> >> About (2): I'm very sympathetic to a recent post on Haskell-cafe about >> having formal descriptions of language extensions. It is not our purview to >> document GHC. However, several extensions are in very common use, but might >> not be quite ready for a language standard. Chief among these, in my >> opinion, is GADTs. GADTs are problematic from a standardization standpoint >> because it's quite hard to specify when a GADT pattern-match type-checks, >> without resorting to discussion of unification variables. For this reason, I >> would be hesitant about putting GADTs in a standard. On the other hand, it >> shouldn't be too hard to specify some sort of minimum implementation that >> individual compilers can build on. I'm calling such a description a >> "pre-standard". >> >> Thoughts? >> >> Richard >> >> On Apr 21, 2016, at 5:22 PM, José Manuel Calderón Trilla >> wrote: >> >>> Hello all, >>> >>> I'm curious if there is any progress on the reboot of the Haskell >>> Prime committee. It has been six months since the closing of >>> nominations and there hasn't been any word that I'm aware of. I've >>> also spoken to a few others that have self-nominated and they too have >>> not heard any news. >>> >>> Personally, I feel that a new standard is very important for the >>> future health of the community. Several threads on the mailing list >>> and posts on the web, such as one on reddit today [1], show a desire >>> from the community for a major consolidation effort. >>> >>> If there is any way that I can help the process along I would be glad >>> to do so. It would be a shame to allow for the enthusiasm for a new >>> committee fade away. >>> >>> Cheers, >>> >>> José >>> >>> >>> [1]: >>> https://www.reddit.com/r/haskell/comments/4fsuvu/can_we_have_xhaskell2016_which_turns_on_the_most/ >>> ___ >>> Haskell-prime mailing list >>> Haskell-prime@haskell.org >>>
[Haskell] CFP: Workshop on Generic Programming 2012
related) DGP workshops in Oxford (June 3-4 2004), and a Spring School on DGP in Nottingham (April 24-27 2006, which had a half-day workshop attached). WGP Steering Committee -- Patrik Jansson (chair) Sibylle Schupp Bruno Oliveira Marcin Zalewski Jaako Järvi Shin-Cheng Mu Jeremy Gibbons Magne Haveraaen Tim Sheard -- Andres Loeh, Haskell Consultant Well-Typed LLP, http://www.well-typed.com ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
Re: [Haskell-cafe] SIGPLAN Programming Languages Software Award
I think the history of generics in Java is Pizza (http://pizzacompiler.sourceforge.net/) - GJ (http://lamp.epfl.ch/pizza/gj/) - Java I think that if you consider that history, and in particular the Pizza compiler, then the connection to FP becomes rather obvious. Cheers, Andres ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] cap 3: stopping thread 3 (stackoverflow)
I don't think a stack overflow event indicates an RTS bug. Stack overflow events usually result in the RTS trying to adjust the stack size, and only if that fails, the program is halted. (... and why can't I copy/paste the text from threadscope's output window) As a workaround, you can use the show-ghc-events binary that is provided by the ghc-events package. Cheers, Andres ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Cabal: top level dependency base -any
Hi. Could anyone shed light on the meaning of this error message? cabal: cannot configure xmonad-0.9.1 It requires base ==3.* For the dependency on base ==3.* there are these packages: base-3.0.3.1 and base-3.0.3.2. However none of them are available. base-3.0.3.1 was excluded because of the top level dependency base -any base-3.0.3.2 was excluded because of the top level dependency base -any It's not a great error message. Yes, xmonad-0.9.1 requires base ==3.*. So far, so good. Now, base is a special package. It comes with ghc, and cannot be upgraded. That's why Cabal will rule out all base versions but the one you already have installed. If you have a recent ghc, that'll be base-4. So Cabal is correct to fail in this case: you cannot install this version of xmonad with this version of ghc. But yes, the error message could (and hopefully soon will) be improved. Cheers, Andres ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Cabal: top level dependency base -any
Hi. So would it be correct to infer that the -any restriction will only (and always) come into play with special packages such as base? No. Unfortunately, -any really means any version is allowed, so that's why the error message is really misleading. Are there any other special packages besides base? W.r.t. Cabal's dependency resolution? No. Cheers, Andres ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Data constructor synonyms
Remember that constructors are functions, except that you can't pattern match against them. .. The downside is that you can't pattern-match against these functions. The thing is that I need pattern matching, just functions won't do. It's only a preprocessor, but Conor's she allows pattern synonyms: http://personal.cis.strath.ac.uk/~conor/pub/she Anyway, a new question arose. If I have already declared a type, can I add new constructors to it from other modules? Again, not within Haskell itself. she also has a feature that allows something like this. There are various other techniques or proposals. For example: http://www.cs.ru.nl/~wouters/Publications/DataTypesALaCarte.pdf http://people.cs.uu.nl/andres/OpenDatatypes.html Cheers, Andres ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] lhs2tex and line numbers
Hi. How could I convince lhs2tex to add in poly mode line numbers before each code line in code block? A long time ago, I've written some experimental code that achieves line numbering in lhs2tex. I've committed the files to the github repository, so you can have a look at the .fmt file and the demo document in https://github.com/kosmikus/lhs2tex/tree/master/ExtLibrary/lineno HTH, Andres ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] lhs2tex build failure
The latest version on GitHub should fix the problem. I'll make a new release soon. https://github.com/kosmikus/lhs2tex Cheers, Andres ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: Alternative (per-project) package database
Hi Dimitry. Depending on what exactly you're after, you may also be interested in Nix and/or NixOS: http://nixos.org/nix/ http://nixos.org/ The Nix package manager builds any package in completely isolated environments and makes sure all dependencies are properly specified. It is easy to build and install one package in many configurations. We have an infrastructure for building Cabal packages easily and quite a number of packages from HackageDB in Nixpkgs (though not as many as Arch). Nix can be used as a secondary package manager on other Unix-like systems. Cheers, Andres -- Andres Loeh, Universiteit Utrecht mailto:and...@cs.uu.nl mailto:m...@andres-loeh.de http://www.andres-loeh.de ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
[Haskell] Final call for participation: Summer school Applied Functional Programming, Aug 16-27, Utrecht NL, Application deadline: May 1
[Feel free to advertise the school to others who might be interested.] ~~ Utrecht Summer School in Computer Science: Applied Functional Programming August 16-27, 2010 Utrecht, The Netherlands ~~ The summer school is intended as a first or an advanced course on Haskell, consisting of lectures and projects to be solved by the participants, working in teams. We mainly target bachelor and master students, but others who are interested are also welcome to apply. The deadline for applications is *** Saturday, May 1, 2010 ***. More information: http://www.cs.uu.nl/wiki/USCS2010 If you have any questions, feel free to contact me. Cheers, Andres -- Andres Loeh, Universiteit Utrecht mailto:and...@cs.uu.nl mailto:m...@andres-loeh.de http://www.andres-loeh.de ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
Re: [Haskell-cafe] Re: Hackage accounts and real names
Let me summarise the main arguments against the restriction: 1. It stops people from contributing [..] 2. Inconsistency [..] 3. Privacy issues [..] 4. It inteferes with people's freedom - who has the right to dictate what name a person (or, for that matter, a group of people) should be known as? 5. It encourages dishonesty: if you want to contribute but not reveal your real name, you have the option to lie about it, and can be fairly confident your lie will never be called. +1 for allowing nicks. Another +1 from me. I must admit that I had never really thought about this restriction, but the arguments against the restriction clearly convince me. I have heard no valid arguments in favour of the restriction. I can see that there are advantages to requiring real names, but that only makes sense if it is enforced (and I certainly don't advocate that). The way it is now, where some people who just silently use pseudonyms get accounts, and others, who are not willing to lie, are rejected, is very bad. If people are really worried about trust, then a comment/reviewing system for Hackage is a better solution. Cheers, Andres -- Andres Loeh, Universiteit Utrecht mailto:and...@cs.uu.nl mailto:m...@andres-loeh.de http://www.andres-loeh.de ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell] Summer School Applied Functional Programming, 16-27 Aug 2010, Utrecht, NL
[Feel free to advertise the school to others who might be interested.] Call for participation: ~~ Utrecht Summer School in Computer Science: Applied Functional Programming August 16-27, 2010 Utrecht, The Netherlands ~~ We offer a summer school that may be interesting to Haskellers on this mailing list. We mainly target bachelor and master students, but others who are interested are also welcome to apply. The deadline for applications is May 1, 2010. More information: http://www.cs.uu.nl/wiki/USCS2010 If you have any questions, feel free to contact me. Cheers, Andres -- Andres Loeh, Universiteit Utrecht mailto:and...@cs.uu.nl mailto:m...@andres-loeh.de http://www.andres-loeh.de ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
Re: [Haskell-cafe] Haskell course, training
Hi Günther, all going well this year I'll be able to invest some money on becoming a better Haskeller. I think I've reached the point where I need some tutoring, so provided I've got money for travel and course fees, and time, where do I get it? I'm not a student so some courses aren't available to me. please consider the summer school in Applied Functional Programming that we at Utrecht University are going to offer this year for the second time: http://www.utrechtsummerschool.nl/index.php?type=coursescode=H9 While the school is mainly aimed at students (bachelor- and master-level), we have no formal requirement that participants must be students, and we will certainly consider other applications. Cheers, Andres -- Andres Loeh, Universiteit Utrecht mailto:and...@cs.uu.nl mailto:m...@andres-loeh.de http://www.andres-loeh.de ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell-cafe] Re: lhs2TeX \eval{} problem
Hi. I'm having a problem with lhs2Tex and \eval{}. It doesn't work. I have the following in a file test.lhs: %include polycode.fmt One %option ghci Two \eval{4} Three When I try to run this file through lhs2Tex, it crashes: lhs2Tex test.lhs ... polycode junk removed ... One %option ghci Two lhs2TeX: fd:7: hGetLine: end of file Has someone encountered this problem before, or knows how to solve this? Two issues: First, it's %options ghci and not %option ghci Second, the \eval is executed in the context of the current file, i.e., the source must be a valid literate Haskell file. An empty literate file causes the literate preprocessor to fail. This works for me: %include polycode.fmt One %options ghci Two \eval{4} Three x = 0 HTH, Andres -- Andres Loeh, Universiteit Utrecht mailto:and...@cs.uu.nl mailto:m...@andres-loeh.de http://www.andres-loeh.de ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Re: lhs2TeX \eval{} problem
Oh, well that teaches me not to type myself... Copy-and-paste is way better! Now lhs2TeX no longer crashes, unfortunately it still doesn't work correctly. It now simply hangs after printing the line Two. It doesn't crash, or eat memory or cpu. It just sits there, doing nothing, until I kill the process. Are you sure you added the extra line at the end? Try to call ghci on the source file. If it manages to load it without errors, then lhs2TeX should succeed as well. Cheers, Andres -- Andres Loeh, Universiteit Utrecht mailto:and...@cs.uu.nl mailto:m...@andres-loeh.de http://www.andres-loeh.de ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell-cafe] ANN: lhs2tex-1.15 (was: lhs2tex, Haskell Platform and cygwin)
Also, it would be nice if there were an lhs2tex version which worked out-of-the-box with base=4, since hacking the Makefile for that seems, er, sub-optimal? I've just uploaded 1.15 which should work better on Windows. Sorry, I should have released a new version a long time ago. Please let me know if this works. Cheers, Andres -- Andres Loeh, Universiteit Utrecht mailto:and...@cs.uu.nl mailto:m...@andres-loeh.de http://www.andres-loeh.de ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] lhs2tex + pretty print
The attached document works for me. HTH, Andres -- Andres Loeh, Universiteit Utrecht mailto:and...@cs.uu.nl mailto:m...@andres-loeh.de http://www.andres-loeh.de \documentclass{article} %include polycode.fmt %options ghci \begin{document} \section{Test} test = putStrLn \\section{Result}\n\nIt works! \perform{test} \end{document} ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Functors and the Visitor Pattern
Although, now I'm second guessing myself, because I can't figure out how we could create some design pattern that simulates an applicative functor. I'm pretty sure the Visitor pattern doesn't take you this far (but I am willing to be corrected). So, is there a way to create applicative functors in non-functional languages? What would that pattern look like? Perhaps this paper can answer your question: Jeremy Gibbons, Bruno C.d.S. Oliveira The essence of the Iterator pattern http://web.comlab.ox.ac.uk/oucl/work/jeremy.gibbons/publications/iterator.pdf HTH, Andres -- Andres Loeh, Universiteit Utrecht mailto:and...@cs.uu.nl mailto:m...@andres-loeh.de http://www.andres-loeh.de ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell] Call for Participation: Utrecht Summer School on Applied Functional Programming
Call for participation: ~~~ Utrecht Summer School in Computer Science: Applied Functional Programming August 17-28, 2009 Utrecht, The Netherlands ~~~ We are offering a summer school that may be interesting to Haskell beginners on this list. We mainly target bachelor and master students, but others interested are also welcome to apply. Note that the deadline for applications is very soon; May 1, 2009. More information: http://www.utrechtsummerschool.nl/index.php?type=coursescode=H9 Cheers, Andres -- Andres Loeh, Universiteit Utrecht mailto:and...@cs.uu.nl mailto:m...@andres-loeh.de http://www.andres-loeh.de ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
Re: [Haskell-cafe] The votes are in!
The results of the Haskell logo competition are in! You can view them at http://www.cs.cornell.edu/w8/~andru/cgi-perl/civs/results.pl?num_winners=1id=E_d21b0256a4fd5ed7algorithm=beatpath Congratulations Jeff Wheeler! Is there also a measure of how strong the winner wins over the losers? Scroll to the bottom of the results page linked above and click on the button, and you'll get a matrix comparing each logo to each other logo. You still have to interpret the results yourself, though. Cheers, Andres -- Andres Loeh, Universiteit Utrecht mailto:and...@cs.uu.nl mailto:m...@andres-loeh.de http://www.andres-loeh.de ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Hac5 projects page
on http://www.haskell.org/haskellwiki/Hac5/Projects, you can list a project under “Project descriptions” and under “Experiences”. What’s the difference? Project descriptions are supposed to be projects you're currently working on or want to work on during the Hackathon. Experiences are not necessarily projects (and feel free to update the description on the page to reflect that), but general Haskell-related things you are familiar with. So, if for example I am looking for someone with a lot of experience in writing library bindings using the FFI, I could look in that list if anyone attending might be able to help me ... HTH, Andres -- Andres Loeh, Universiteit Utrecht mailto:and...@cs.uu.nl mailto:m...@andres-loeh.de http://www.andres-loeh.de ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell] ANNOUNCE: multirec-0.2
multirec-0.2: Generic programming with systems of recursive datatypes = Many generic programs require information about the recursive positions of a datatype. Examples include the generic fold, generic rewriting or the Zipper data structure. Several generic programming systems allow to write such functions by viewing datatypes as fixed points of a pattern functor. Traditionally, this view has been limited to so-called regular datatypes such as lists and binary trees. In particular, systems of mutually recursive datatypes have been excluded. With the multirec library, we provide a mechanism to talk about fixed points of systems of datatypes that may be mutually recursive. On top of this representations, generic functions such as the fold or the Zipper can then be defined. Changelog (changes w.r.t. multirec-0.1) --- * Constructor information and generic show (Generics.MultiRec.Show). * Variants of fold (Generics.MultiRec.FoldAlg) that make the definition of algebras significantly more convenient. * Template Haskell code to generate the boilerplate required to instantiate this library to a system of datatypes. Requirements * GHC 6.8.3 or later * Cabal 1.2.1 or later Download With cabal-install: cabal install multirec Get the package: http://hackage.haskell.org/cgi-bin/hackage-scripts/package/multirec Get the source: svn checkout https://svn.cs.uu.nl:12443/repos/dgp-haskell/multirec/trunk Bugs Support -- Report issues, request features, or just discuss the library with the authors, maintainers, and other interested persons at: http://www.haskell.org/mailman/listinfo/generics -- Andres Loeh, Universiteit Utrecht mailto:and...@cs.uu.nl mailto:m...@andres-loeh.de http://www.andres-loeh.de ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] ANNOUNCE: zipper-0.1
zipper-0.1: Generic zipper for systems of recursive datatypes = The zipper is a data structure that allows typed navigation on a value. It maintains a subterm as a current point of focus. The rest of the value is the context. Focus and context are automatically updated when navigating up, down, left or right in the value. The term that is in focus can also be modified. This library offers a generic zipper for systems of datatypes. In particular, it is possible to move the focus between subterms of different types, in an entirely type-safe way. This library is built on top of the multirec library, so all that is required to get a zipper for a datatype system is to instantiate the multirec library for that system. Requirements * GHC 6.8.3 or later * Cabal 1.2.1 or later Download With cabal-install: cabal install zipper Get the package: http://hackage.haskell.org/cgi-bin/hackage-scripts/package/zipper Get the source: svn checkout https://svn.cs.uu.nl:12443/repos/dgp-haskell/zipper/trunk Bugs Support -- Report issues, request features, or just discuss the library with the authors, maintainers, and other interested persons at: http://www.haskell.org/mailman/listinfo/generics -- Andres Loeh, Universiteit Utrecht mailto:and...@cs.uu.nl mailto:m...@andres-loeh.de http://www.andres-loeh.de ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] type family vs. polymorphism
Hi. Here's a strange interaction of type families and higher-rank polymorphism (tested with both ghc-6.8.3 and ghc-6.10.1): {-# LANGUAGE TypeFamilies, EmptyDataDecls, RankNTypes #-} data X (a :: *) type family Y (a :: *) -- This works (datatype). i1 :: (forall a. X a) - X Bool i1 x = x -- This works too (type family and extra arg). i2 :: (forall a. a - Y a) - Y Bool i2 x = x True -- This doesn't work (type family). -- i3 :: (forall a. Y a) - Y Bool -- i3 x = x I would expect i3 to be ok as well. Note that this is a simplified example and not really useful in its simplified form. Cheers, Andres -- Andres Loeh, Universiteit Utrecht mailto:and...@cs.uu.nl mailto:m...@andres-loeh.de http://www.andres-loeh.de ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
Re: [Haskell-cafe] Type wildcards
Type wildcards that allow partially specifying types, e.g: f :: _ - String f x = show x This will instruct the type-inferrer to fill out the wild-card part only (e.g: Show a = a). Also see http://hackage.haskell.org/trac/haskell-prime/wiki/PartialTypeAnnotations Cheers, Andres -- Andres Loeh, Universiteit Utrecht mailto:and...@cs.uu.nl mailto:m...@andres-loeh.de http://www.andres-loeh.de ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] Associated data types
Hi. Date: Wed, 10 Dec 2008 13:36:11 + From: Lennart Augustsson [EMAIL PROTECTED] Subject: Re: [Haskell-cafe] Associated data types For an associated data type D, we know that the type function D is injective, i.e., for different indicies given to D we'll get different data types. This makes much more powerful reasoning possible in the type checker. If associated data types are removed there has to be some new mechanism to declare an associated type as injective, or the type system will lose power. -- Lennart 2008/12/10 Eyal Lotem [EMAIL PROTECTED]: If we have associated type synonyms, is there still reason to have associated data types? [...] Another, somewhat related, issue is that associated type synonyms cannot currently be partially applied, whereas associated data types can. Cheers, Andres -- Andres Loeh, Universiteit Utrecht mailto:[EMAIL PROTECTED] mailto:[EMAIL PROTECTED] http://www.andres-loeh.de ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell] ANNOUNCE: multirec-0.1
multirec: Generic programming with systems of recursive datatypes = Many generic programs require information about the recursive positions of a datatype. Examples include the generic fold, generic rewriting or the Zipper data structure. Several generic programming systems allow to write such functions by viewing datatypes as fixed points of a pattern functor. Traditionally, this view has been limited to so-called regular datatypes such as lists and binary trees. In particular, systems of mutually recursive datatypes have been excluded. With the multirec library, we provide a mechanism to talk about fixed points of systems of datatypes that may be mutually recursive. On top of this representations, generic functions such as the fold or the Zipper can then be defined. We expect that the library will be especially interesting for compiler writers, because ASTs are typically systems of mutually recursive datatypes, and with multirec it becomes easy to write generic functions on ASTs. The library is based on ideas described in the paper: Alexey Rodriguez, Stefan Holdermans, Andres Löh, Johan Jeuring Generic programming with fixed points for mutually recursive datatypes Technical Report, Universiteit Utrecht http://www.cs.uu.nl/research/techreps/repo/CS-2008/2008-019.pdf Features * Generalizes the fixed point view from single, regular datatypes to systems of recursive datatypes. * Includes detailed examples: generic fold and generic compos, the latter in the style of Björn Bringert, Arne Ranta A pattern for almost compositional functions ICFP 2006 The Zipper and generic rewriting for systems of datatypes will be released soon as separate libraries that build on multirec. * The generic compos functions do not require the user to modify their existing systems of datatypes. * In its current form, this library does not support nested datatypes. Requirements * GHC 6.8.3 or later * Cabal 1.2.1 or later Download With cabal-install: cabal install multirec Get the package: http://hackage.haskell.org/cgi-bin/hackage-scripts/package/multirec Get the source: svn checkout https://svn.cs.uu.nl:12443/repos/dgp-haskell/multirec/trunk Bugs Support -- Report issues, request features, or just discuss the library with the authors, maintainers, and other interested persons at: http://www.haskell.org/mailman/listinfo/generics -- Andres Loeh, Universiteit Utrecht mailto:[EMAIL PROTECTED] mailto:[EMAIL PROTECTED] http://www.andres-loeh.de ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] ANNOUNCE: lhs2tex-1.14
lhs2TeX version 1.14 We are pleased to announce a new release of lhs2TeX, a preprocessor to generate LaTeX code from literate Haskell sources. lhs2TeX includes the following features: * Highly customized output. * Liberal parser -- no restriction to Haskell 98. * Generate multiple versions of a program or document from a single source. * Active documents: call Haskell to generate parts of the document (useful for papers on Haskell). * A manual explaining all the important aspects of lhs2TeX. Changes (w.r.t. lhs2TeX 1.13) - * Compatible with cabal-1.6; traditional configure/make installation should still work. * Unicode support. * Support for Agda's lexing rules (via --agda flag). * Minor bugfixes. Requirements and Download - A source distribution is available from http://people.cs.uu.nl/andres/lhs2tex/ and, of course, via Hackage: http://hackage.haskell.org/cgi-bin/hackage-scripts/package/lhs2tex Should work on all major platforms, but has mainly been tested on Linux. Binaries will be made available on request. You need a recent version of GHC (6.8.{2,3} are tested, older versions might work) to build lhs2TeX, and, of course, you need a TeX distribution to make use of lhs2TeX's output. The program includes a configuration that is suitable for use with LaTeX. In theory, there should be no problem to generate code for other TeX flavors, such as plainTeX or ConTeXt. Happy lhs2TeXing, Andres Loeh and Ralf Hinze -- Andres Loeh, Universiteit Utrecht mailto:[EMAIL PROTECTED] mailto:[EMAIL PROTECTED] http://www.andres-loeh.de ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] Change of Editor HCAR (Haskell Communities and Activities Report)
Dear Haskellers. The Haskell Communities and Activities Report (HCAR) for short is a collection of status reports and news items from projects, groups, companies, and individuals that appears twice per year. As of now, the latest issue is from December 2007 and available from http://haskell.org/communities. I have been the editor of the report for the last six editions, and have recently been looking for a successor. It is my pleasure to announce that Janis Voigtlaender, Technical University of Dresden has declared himself willing to perform this task, starting with the next issue, which will have a deadline very soon, probably in the beginning of May. I want to use this opportunity to thank Janis for accepting the responsibility and thereby helping to keep this valuable information source alive. I also want to thank all the contributors to the HCAR for supporting it during the past years and ask you to support Janis in his job by submitting many new entries in time for the deadline, as you usually did when I was the editor. Cheers, Andres -- Andres Loeh, Universiteit Utrecht mailto:[EMAIL PROTECTED] mailto:[EMAIL PROTECTED] http://www.andres-loeh.de ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] Advert: Software Technology Master at Utrecht University
Haskell enthusiasts looking for an interesting and challenging Master program should consider the Software Technology program at Utrecht University. The Master Program Software Technology studies techniques that are employed in the production of software. We start from sound theoretical foundations, with a strong focus on real applicability. The program includes courses on programming methodology, programming formalisms (languages), programming tools, software architectures, component based programming, specification formalisms and verification techniques (correctness proofs, theorem proving). Almost all of our courses use Haskell as the main implementation language, and we have many courses that are specifically targeted at functional programmers such as Implementation of Programming Languages, Advanced Functional Programming and Generic Programming. Furthermore, we have regular seminars on topics such as Type Systems, Dependently-Typed Programming, Program Analysis or Advanced Compiler Construction. The Master Program is internationally oriented: the program is open to foreign students, and courses are taught in English. Students have the opportunity to follow courses and do projects at foreign universities and institutes. The program caters for students with a desire to obtain a Ph.D. position or a research position in a company, and for students who are interested in jobs as software designer in industry. The program results in a degree Master of Science in Computer Science. The program is offered by the Center for Software Technology of the Institute of Information and Computing Sciences at Utrecht University. For more information, see http://www.cs.uu.nl/wiki/Master http://www.cs.uu.nl/wiki/Master/MasterCourses -- Andres Loeh, Universiteit Utrecht mailto:[EMAIL PROTECTED] mailto:[EMAIL PROTECTED] http://www.andres-loeh.de ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] ANNOUNCE: lhs2tex-1.13
lhs2TeX version 1.13 We are pleased to announce a new release of lhs2TeX, a preprocessor to generate LaTeX code from literate Haskell sources. lhs2TeX includes the following features: * Highly customized output. * Liberal parser -- no restriction to Haskell 98. * Generate multiple versions of a program or document from a single source. * Active documents: call Haskell to generate parts of the document (useful for papers on Haskell). * A manual explaining all the important aspects of lhs2TeX. Changes (w.r.t. lhs2TeX 1.12) - * Compatible with ghc-6.8.{1,2}. * Compatible with cabal-1.2; traditional configure/make installation should still work. * Uses filepath. * LINE pragmas can be disabled with --no-pragmas. * Fixed comment lexing bugs (-- was considered a Haskell comment, \% was considered a TeX comment) * Added a %subst directive for backquoted operators. Requirements and Download - A source distribution is available from http://www.cs.uu.nl/~andres/lhs2tex/ Should work on all major platforms, but has mainly been tested on Linux. Binaries will be made available on request. You need a recent version of GHC (6.8.2 is tested, older versions might work) to build lhs2TeX, and, of course, you need a TeX distribution to make use of lhs2TeX's output. The program includes a configuration that is suitable for use with LaTeX. In theory, there should be no problem to generate code for other TeX flavors, such as plainTeX or ConTeXt. Happy lhs2TeXing, Andres Loeh and Ralf Hinze [EMAIL PROTECTED] ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] 2nd ANNOUNCE: HCAR 12/2007
Hi everyone. [For everyone who missed the first announcement because they were already in the holidays ...] The December 2007 edition of the Haskell Communities and Activities Report is out and available for download from http://haskell.org/communities Cheers, Andres -- Andres Loeh, Universiteit Utrecht mailto:[EMAIL PROTECTED] mailto:[EMAIL PROTECTED] http://www.andres-loeh.de ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] ANNOUNCE: Haskell Communities Activities Report (13th ed., December 2007)
On behalf of the many, many contributors, I am pleased to announce that the Haskell Communities and Activities Report (13th edition, December 2007) http://www.haskell.org/communities/ is now available from the Haskell Communities home page in PDF and HTML formats. Many thanks go to all the people that contributed to this report, both directly, by sending in descriptions, and indirectly, by doing all the interesting things that are reported. I hope you will find it as interesting a read as we did. If you haven't encountered the Haskell Communities and Activities Reports before, you may like to know that the first of these reports was published in November 2001. Their goal is to improve the communication between the increasingly diverse groups, projects and individuals working on, with, or inspired by Haskell. The idea behind these reports is simple: Every six months, a call goes out to all of you enjoying Haskell to contribute brief summaries of your own area of work. Many of you respond (eagerly, unprompted, and well in time for the actual deadline ;) ) to the call. The editor collects all the contributions into a single report and feeds that back to the community. When we try for the next update, six months from now, you might want to report on your own work, project, research area or group as well. So, please put the following into your diaries now: End of April 2008: target deadline for contributions to the May 2008 edition of the HCA Report Unfortunately, many Haskellers working on interesting projects are so busy with their work that they seem to have lost the time to follow the Haskell related mailing lists and newsgroups, and have trouble even finding time to report on their work. If you are a member, user or friend of a project so burdened, please find someone willing to make time to report and ask them to `register' with the editor for a simple e-mail reminder in the middle of April (you could point me to them as well, and we can then politely ask if they want to contribute, but it might work better if you do the initial asking). Of course, they will still have to find the ten to fifteen minutes to draw up their report, but maybe we can increase our coverage of all that is going on in the community. Feel free to circulate this announcement further in order to reach people who might otherwise not see it. Enjoy! Andres Loeh hcar at haskell.org -- Haskell Communities and Activities Report (http://haskell.org/communities) ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] REMINDER: HCA Report (December 2007 edition)
Dear Haskellers, the deadline for the December 2007 edition of the Haskell Communities and Activities Report is only a few days away. If you haven't already, please write an entry for your new project, or update your old entry. Until now, I have about 30 reactions. This is okay compared to the development of previous editions, but not enough given the number of announcements on this list during the past months. Also, many regular contributors haven't yet submitted their entries. Please do! The deadline is Friday, 7 December 2007. If you absolutely cannot make it by Friday, I may be able to give a few days extension on an individual basis. Please contact me if you have any questions. Please mail your entries to hcar at haskell dot org, in plain text or pseudo-(La)TeX format. More information can be found in the original Call for Contributions at http://www.haskell.org/pipermail/haskell/2007-November/019988.html I look forward to receiving your contributions. Thanks a lot, Andres (current editor) ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] Call for Contributions - Haskell Communities and Activities Report, December 2007 edition
Dear Haskellers, so much has happened in the Haskell world in the past months. Therefore, although later than usual, I would very much like to collect contributions for the 13th edition of the Haskell Communities Activities Report http://www.haskell.org/communities/ Submission deadline: 7 December 2007 (please send your contributions to hcar at haskell.org, in plain text or LaTeX format) This is the short story: * If you are working on any project that is in some way related to Haskell, please write a short entry and submit it to the me. Even if the project is very small or unfinished or you think it is not important enough -- please reconsider and submit an entry anyway! * If you are interested any project related to Haskell that has not previously been mentioned in the HCA Report, please tell me, so that I can contact the project leaders and ask them to submit an entry. * Feel free to pass on this call for contributions to others that might be interested. More detailed information: The Haskell Communities Activities Report is a bi-annual overview of the state of Haskell as well as Haskell-related projects over the last, and possibly the upcoming 6 months. If you have only recently been exposed to Haskell, it might be a good idea to browse the May 2007 edition -- you will find interesting topics described as well as several starting points and links that may provide answers to many questions. Contributions will be collected until the submission deadline. They will then be compiled into a coherent report that is published online as soon as it is ready. As always, this is a great opportunity to update your webpages, make new releases, announce or even start new projects, or to talk about developments you want every Haskeller to know about! As the purpose of the report is to collect recent or current activities, I encourage you to update all existing summaries and reports. I will probably drop any topics that have not had any activity for the past year, i.e., since November 2006, but I would very much prefer you to present an updated description of the topic. Of course, new entries are more than welcome. Reports should generally be kept brief and informative, ranging from a few sentences to a few hundred words, to keep the whole report reasonably sized. Looking forward to your contributions, Andres (current editor) FAQ: Q: Which topics are relevant? A: *All* topics which are related to Haskell in some way are relevant. We usually had reports from users of Haskell (private, academic, or commercial), from authors or contributors to projects related to Haskell, from people working on the Haskell language, libraries, on language extensions or variants. We also like reports over distributions of Haskell software, Haskell infrastructure, books and tutorials on Haskell. Reports on past and upcoming events related to Haskell are also relevant. Finally, there might be new topics I don't even think about. As a rule of thumb: if in doubt, then it probably is relevant and has a place in the HCAR. You can also ask the editor. Q: Is unfinished work relevant? Are ideas for projects relevant? A: Yes! You can use the HCAR to talk about projects you are currently working on. You can use it to look for other developers that might help you. You can use it to write ``wishlist'' items for libraries and language features you would like to see implemented. Q: How much should I write? A: There's no formal limit. But generally, entries should be short and to the point. A general introduction is helpful. Apart from that, you should focus on recent or upcoming developments. There also is no minimum length of an entry! The reports aims at being as complete as possible, so please consider writing an entry, even if it's only a few lines long. Q: If I don't update my entry, but want to keep it in the report, what should I do? A: Tell me that there are no changes. I will reuse the old entry in this case, but I might drop it if it's older than a year, to give more room and more attention to projects that change a lot. Don't resent complete entries if you haven't changed them. Q: What format should I write in? A: The best format is a LaTeX source file, adhering to the template that's available at: http://haskell.org/communities/11-2007/template.tex There's also a LaTeX style file at http://haskell.org/communities/11-2007/hcar.sty that you can use to preview your entry. If you don't know LaTeX, then use plain text. If you modify an old entry, I will send you your old entry as a template within the next days.Please modify that template, rather than using your own version of the old entry about a template. Don't worry about writing correct LaTeX, I will be able to handle your file.
[Haskell] ANNOUNCE: Haskell Communities Activities Report (12th ed., May 2007)
On behalf of the many, many contributors, I am pleased to announce that the Haskell Communities and Activities Report (12th edition, May 2007) http://www.haskell.org/communities/ is now available from the Haskell Communities home page in several PDF and HTML formats. Many thanks go to all the people that contributed to this report, both directly, by sending in descriptions, and indirectly, by doing all the interesting things that are reported. I hope you will find it as interesting a read as we did. If you haven't encountered the Haskell Communities and Activities Reports before, you may like to know that the first of these reports was published in November 2001. Their goal is to improve the communication between the increasingly diverse groups, projects and individuals working on, with, or inspired by Haskell. The idea behind these reports is simple: Every six months, a call goes out to all of you enjoying Haskell to contribute brief summaries of your own area of work. Many of you respond (eagerly, unprompted, and well in time for the actual deadline ;) ) to the call. The editor collects all the contributions into a single report and feeds that back to the community. When we try for the next update, six months from now, you might want to report on your own work, project, research area or group as well. So, please put the following into your diaries now: End of October 2007: target deadline for contributions to the November 2007 edition of the HCA Report Unfortunately, many Haskellers working on interesting projects are so busy with their work that they seem to have lost the time to follow the Haskell related mailing lists and newsgroups, and have trouble even finding time to report on their work. If you are a member, user or friend of a project so burdened, please find someone willing to make time to report and ask them to `register' with the editor for a simple e-mail reminder in the middle of April (you could point me to them as well, and we can then politely ask if they want to contribute, but it might work better if you do the initial asking). Of course, they will still have to find the ten to fifteen minutes to draw up their report, but maybe we can increase our coverage of all that is going on in the community. Feel free to circulate this announcement further in order to reach people who might otherwise not see it. Enjoy! Andres Loeh hcar at haskell.org -- Haskell Communities and Activities Report (http://haskell.org/communities) ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] REMINDER: HCA Report (May 2007 edition)
Dear Haskellers, the deadline for the May 2007 edition of the Haskell Communities and Activities Report is only a few days away -- but this is still enough time to make sure that the report contains a section on *your* project, on the interesting stuff that you've been doing; using or affecting Haskell in some way. Many projects that have been included in former reports have not yet updated their entries. Please have a look at the November 2006 edition for reference. * Has your project been listed in previous Reports, but is not yet updated? Please write a short update! * Are you no longer working on a project that was included in the Report? Write up what you are working on instead, and tell me if someone else has picked up the project. * Is some project you have heard about not included in any previous Report? Please let me know ... There is still time to write a completely new entry, on a new compiler, tool, library, company, user group, idea, ... -- as long as there is a connection to the Haskell language, there is a place for it in the Report! The general deadline is Wednesday, 02 May 2007, but I can extend it by a few days on an individual basis. Just please contact me before the deadline so that I know you are writing. Please mail your entries to hcar at haskell dot org, in plain text or pseudo-(La)TeX format. More information can be found in the original Call for Contributions at http://www.haskell.org/pipermail/haskell/2007-April/019340.html I look forward to receiving your contributions. Thanks a lot, Andres (current editor) -- Haskell Communities and Activities Report (http://haskell.org/communities) 05/2007 edition submission deadline: 02 May 2007 [EMAIL PROTECTED] ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] Call for Contributions - HCA Report (May 2007 edition)
Dear Haskellers, it is nearly time for the twelfth edition of the Haskell Communities Activities Report http://www.haskell.org/communities/ Submission deadline: 2 May 2007 (please send your contributions to hcar at haskell.org, in plain ASCII or LaTeX format) This is the short story: * If you are working on any project that is in some way related to Haskell, write a short entry and submit it to the me. Even if the project is very small or unfinished or you think it is not important enough -- please reconsider and submit an entry anyway! * If you are interested any project related to Haskell that has not previously been mentioned in the HCA Report, please tell me, so that I can contact the project leaders and ask them to submit an entry. * Feel free to pass on this call for contributions to others that might be interested. More detailed information: The Haskell Communities Activities Report is a bi-annual overview of the state of Haskell as well as Haskell-related projects over the last, and possibly the upcoming 6 months. If you have only recently been exposed to Haskell, it might be a good idea to browse the November 2006 edition -- you will find interesting topics described as well as several starting points and links that may provide answers to many questions. Contributions will be collected until the beginning of May. They will be compiled into a coherent report which will appear sometime near the end of May. As always, this is a great opportunity to update your webpages, make new releases, announce of even start new projects, or to point at some developments you want every Haskeller to see! As the purpose of the report is to collect recent or current activities, I encourage you to update all existing summaries and reports. I will probably drop any topics that have not had any activity for the past year, i.e., since June 2006, but I would very much prefer you to present an updated description of the topic. Of course, new entries are more than welcome. Reports should generally be kept brief and informative, ranging from a few sentences to a few hundred words, to keep the whole report reasonably sized. Looking forward to your contributions, Andres (current editor) --- topics New suggestions for current hot topics, activities, projects, etc. are welcome - especially with names and addresses of potential contacts, but here is a non-exclusive list of likely topics (see also http://www.haskell.org/communities/topics.html ): General Haskell developments Haskell implementations Haskell extensions Standardization (Haskell', ...) Documentation Libraries Papers and Books Feedback Summaries of discussions in specialist mailing lists Conference reports Community activities Other Haskell information channels (TMR, Sequence, HWN, ...) Announcements Upcoming Haskell events Everything that's new or has had new releases Ongoing projects Reports on what's happening behind the scenes Confirmations that projects are still maintained Calls for contributions and contributors Tutorials Tools and Applications Released and unreleased Haskell applications Tools useful for Haskell programmers Experiences with using Haskell for a project Commercial uses of Haskell Even if your topic is not listed in this list, there's a good chance it has a place in the Report. Please get in touch with me. If you want to see an entry that hasn't been there in the past, but you are not the maintainer of the project, then please encourage the maintainers to write an entry/update, or ask permission to write the entry yourself. -- what should I write? That depends on your topic, but as a general rule, it shouldn't take you long. A simple sentence or two about your use of Haskell could go into the Individual Haskellers section. If you're a company, or if you're working on a project using Haskell as the implementation language, a paragraph on that could go into the Applications section. A typical summary report about a tool/library/project/application/... would be between 1 and 3 paragraphs of ASCII text (what's it about? major topics and results since the last report? current hot topics? major goals for the next six months?) plus pointers to material for further reading (typically to a home page, or to mailing list archives, specifications and drafts, implementations, meetings, minutes, ...). Browsing through previous editions should give you a good idea of the variety of possibilities, ranging from very brief to extensive. For those who prefer templates to fill in, the report is edited in LaTeX, and an entry template might look something like this:
Re: [Haskell-cafe] Function Composition
Can anyone explain why Shape.Polygon would have a different type to (Shape).Polygon, I thought the brackets would be redundant. Here is the output from a Hugs session Animation :v -- Hugs Version 20050113 Animation :t Shape Shape :: Shape - Region Animation :t Polygon Polygon :: [Vertex] - Shape Animation :t (Shape.Polygon) Polygon :: [Vertex] - Shape Animation :t ((Shape).Polygon) Shape . Polygon :: [Vertex] - Region Animation :t Shape.(Polygon) Shape . Polygon :: [Vertex] - Region Shape.Polygon is a qualified name, and you probably have a module called Shape. Use spaces around the dot ... Cheers, Andres ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: help from the community?
Just a little remark on the side: 'If' and 'case' demand exactly one expression. In such cases allowing zero expressions is not a generalization but an unnecessary complication. 'Let' and 'where' allow any number of bindings, so allowing zero bindings (instead of demanding at least one) is a simplification. I meant the branches of a case (the report specifies at least 1). I think it's important to keep some possibility for the compiler to detect probable errors as syntax errors. If all syntax is inhabited by strange defaults then this just means simple errors will go undetected eg: let a = case foo of Here, the user has probably got sidetracked into editing some other part of the program and just forgotten to get back to fill in the cases for the case construct. Allowing zero cases means the user will get a strange runtime error instead as the function part of the case is undefined. I agree. On the other hand, if there are uninhabited types (modulo _|_), it might be nice to have an empty case as an explicit eliminator. let z = \y (foo y) Here, it seems clear that the user has just forgotten to type the - which means a simple syntax error would get transformed into a much more puzzling (esp for a newbie) type error. Again, for the lambda I obviously meant the case of 0 variables, i.e. something like (\ - y) which would then just be equivalent to y. I think this case is probably the one that's most comparable to the situation in question (whether to allow empty forall's). Since the designers of previous Haskell versions obviously thought it's a good idea to disallow empty lambdas, let's disallow empty forall's as well. Cheers, Andres ___ Haskell-prime mailing list Haskell-prime@haskell.org http://www.haskell.org/mailman/listinfo/haskell-prime
Re: help from the community?
The only reasons that I could see in favor of allowing empty foralls is that it might be easier to automatically generate code. Haskell seems to be a bit inconsistent in how it treats empty constructs. For example, empty let and empty where seems to be allowed, but not an empty case? Just a little remark on the side: 'If' and 'case' demand exactly one expression. In such cases allowing zero expressions is not a generalization but an unnecessary complication. 'Let' and 'where' allow any number of bindings, so allowing zero bindings (instead of demanding at least one) is a simplification. I meant the branches of a case (the report specifies at least 1). Similarly, the report specifies that lambdas must have at least one argument, infix declarations must not be empty and datatype declarations must not be empty (the latter will definitely be fixed). Cheers, Andres ___ Haskell-prime mailing list Haskell-prime@haskell.org http://www.haskell.org/mailman/listinfo/haskell-prime
Re: help from the community?
I cannot see how an empty list of tyvars is useful or desirable in practice: data Foo = Foo (forall . Int) is equivalent to just data Foo = Foo Int so why bother to permit the former? It probably indicates some error in the thinking of the programmer, so the compiler should bring it to her attention. The only reasons that I could see in favor of allowing empty foralls is that it might be easier to automatically generate code. Haskell seems to be a bit inconsistent in how it treats empty constructs. For example, empty let and empty where seems to be allowed, but not an empty case? On the other hand, I can imagine a use for phantom type variables in the quantifier (especially if they occur in multi-parameter predicates, but not in the type). So I think accepting them with a warning is reasonable. I can also imagine predicates that do not mention locally-quantified variables - the assumption must be that they mention variables bound on the LHS of the datatype decl instead? e.g. the Show predicate here: data Foo a b = Foo a b | Bar (forall c . (Show b, Relation b c) = (b,c)) Hmm, maybe a simpler version of this example would illustrate what you mean by the proposal (first of the three bullets) to allow an empty quantifier list: data Foo a b = Foo a b | Bar (forall . Show b = b) In which case, does this even count as a polymorphic component at all? Is it not rather GADT-like instead? data Foo a b where Foo :: a - b - Foo a b Bar :: Show b = b - Foo a b Would these two have the same meaning? I have a feeling what the GADT is, but no idea what the former type means. Constructor that have polymorphic components cannot appear in the program without values for their polymorphic fields. I didn't fully understand this requirement. If Haskell-prime gets rank-2 or rank-n types, then do we need to restrict constructors in this way? Ok, this really boils down to the question of whether we do rank-2 or rank-n types. I'm biased, because I actually use rank-n types frequently, and feel somewhat limited by the rank-2 restrictions. I don't know how many people actually do, though. I can understand Iavor's points that rank-2 might be easier to explain, but at least GHC's rank-n extension has a very detailed paper explaining it, so I guess it's one of the better documented extensions. I very much agree that nested patterns for polymorphic components should be disallowed. Cheers, Andres ___ Haskell-prime mailing list Haskell-prime@haskell.org http://www.haskell.org/mailman/listinfo/haskell-prime
Re: recent changes to draft haskell prime report
I have fiddled with the build system, to enable the current state of the Report in the darcs repository to be generated into (at least) HTML, (hopefully also PDF and PS soon) automatically as every patch is checked do we still need PS? in. In theory, the following link should always give you the most up-to-date version of the text: http://darcs.haskell.org/haskell-prime-report/report/haskell-prime-draft.html (I am wondering whether to make this a 'darcs test' thing, so if the Report fails to build, your patch will be rejected. Any opinions?) Good idea. Cheers, Andres ___ Haskell-prime mailing list Haskell-prime@haskell.org http://www.haskell.org/mailman/listinfo/haskell-prime
[Haskell] ANNOUNCE: lhs2tex-1.12
lhs2TeX version 1.12 We are pleased to announce a new release of lhs2TeX, a preprocessor to generate LaTeX code from literate Haskell sources. lhs2TeX includes the following features: * Highly customized output. * Liberal parser -- no restriction to Haskell 98. * Generate multiple versions of a program or document from a single source. * Active documents: call Haskell to generate parts of the document (useful for papers on Haskell). * A manual explaining all the important aspects of lhs2TeX. Changes (w.r.t. lhs2TeX 1.11) - * Compatible with ghc-6.6. * Compatible with cabal-1.1.6; traditional configure/make installation should still work. Thanks to Brian Smith for submitting a patch to improve the Cabal experience on Windows. Requirements and Download - A source distribution is available from http://www.iai.uni-bonn.de/~loeh/lhs2tex/ It has been verified to build on Linux and MacOSX, but should also work on Windows. Binaries will be made available on request. You need a recent version of GHC (6.4.2 is tested, older versions might work) to build lhs2TeX, and, of course, you need a TeX distribution to make use of lhs2TeX's output. The program includes a configuration that is suitable for use with LaTeX. In theory, there should be no problem to generate code for other TeX flavors, such as plainTeX or ConTeXt. Happy lhs2TeXing, Andres Loeh and Ralf Hinze [EMAIL PROTECTED] [EMAIL PROTECTED] ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] ANNOUNCE: Haskell Communities Activities Report (11th ed., November 2006)
On behalf of the many, many contributors, I am pleased to announce that the Haskell Communities and Activities Report (11th edition, November 2006) http://www.haskell.org/communities/ is now available from the Haskell Communities home page in several formats: PDF, for screenreading as well as printing, HTML, for those of you who prefer not to deal with plugins or external viewers, and PostScript, for those of you who have nice quick printers that do not grok PDF. Many thanks go to all the people that contributed to this report, both directly, by sending in descriptions, and indirectly, by doing all the interesting things that are reported. I hope you will find it as interesting a read as we did. If you haven't encountered the Haskell Communities and Activities Reports before, you may like to know that the first of these reports was published in November 2001. Their goal is to improve the communication between the increasingly diverse groups, projects and individuals working on, with, or inspired by Haskell. The idea behind these reports is simple: Every six months, a call goes out to all of you enjoying Haskell to contribute brief summaries of your own area of work. Many of you respond (eagerly, unprompted, and well in time for the actual deadline ;) ) to the call. The editor collects all the contributions into a single report and feeds that back to the community. When we try for the next update, six months from now, you might want to report on your own work, project, research area or group as well. So, please put the following into your diaries now: End of April 2007: target deadline for contributions to the May 2006 edition of the HCA Report Unfortunately, many Haskellers working on interesting projects are so busy with their work that they seem to have lost the time to follow the Haskell related mailing lists and newsgroups, and have trouble even finding time to report on their work. If you are a member, user or friend of a project so burdened, please find someone willing to make time to report and ask them to `register' with the editor for a simple e-mail reminder in the middle of April (you could point me to them as well, and we can then politely ask if they want to contribute, but it might work better if you do the initial asking). Of course, they will still have to find the ten to fifteen minutes to draw up their report, but maybe we can increase our coverage of all that is going on in the community. Feel free to circulate this announcement further in order to reach people who might otherwise not see it. Enjoy! Andres Loeh hcar at haskell.org -- Haskell Communities and Activities Report (http://haskell.org/communities) ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] REMINDER: HCA Report (November 2006 edition)
Dear Haskellers, the deadline for the November 2006 edition of the Haskell Communities and Activities Report is only a few days away -- but this is still enough time to make sure that the report contains a section on *your* project, on the interesting stuff that you've been doing; using or affecting Haskell in some way. Many projects that have been included in former reports have not yet updated their entries. Please have a look at the June 2006 edition for reference. * Has your project been listed in previous Reports, but is not yet updated? Please write a short update! * Are you no longer working on a project that was included in the Report? Write up what you are working on instead, and tell me if someone else has picked up the project. * Is some project you have heard about not included in any previous Report? Please let me know ... There is still time to write a completely new entry, on a new compiler, tool, library, company, user group, idea, ... -- as long as there is a connection to the Haskell language, there is a place for it in the Report! The general deadline is Monday, 06 November 2006, but I can extend it by a few days on an individual basis. Just please contact me before the deadline so that I know you are writing. Please mail your entries to hcar at haskell dot org, in plain text or pseudo-(La)TeX format. More information can be found in the original Call for Contributions at http://www.haskell.org/pipermail/haskell/2006-October/018646.html I look forward to receiving your contributions. Thanks a lot, Andres (current editor) ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] Call for Contributions - HCA Report (November 2006 edition)
Dear Haskellers, it is nearly time for the eleventh edition of the Haskell Communities Activities Report http://www.haskell.org/communities/ Submission deadline: 6 November 2006 (please send your contributions to hcar at haskell.org, in plain ASCII or LaTeX format) This is the short story: * If you are working on any project that is in some way related to Haskell, write a short entry and submit it to the me. * If you are interested any project related to Haskell that has not previously been mentioned in the HCA Report, please tell me, so that I can contact the project leaders and ask them to submit an entry. * Feel free to pass on this call for contributions to others that might be interested. More detailed information: The Haskell Communities Activities Report is a bi-annual overview of the state of Haskell as well as Haskell-related projects over the last, and possibly the upcoming 6 months. If you have only recently been exposed to Haskell, it might be a good idea to browse the June 2006 edition -- you will find interesting topics described as well as several starting points and links that may provide answers to many questions. Contributions will be collected until the beginning of November. They will be compiled into a coherent report which will appear sometime near the end of November. As always, this is a great opportunity to update your webpages, make new releases, announce of even start new projects, or to point at some developments you want every Haskeller to see! As the purpose of the report is to collect recent or current activities, I encourage you to update all existing summaries and reports. I will probably drop any topics that have not had any activity for the past year, i.e., since November 2005, but I would very much prefer you to present an updated description of the topic. Of course, new entries are more than welcome. Reports should generally be kept brief and informative, ranging from a few sentences to a few hundred words, to keep the whole report reasonably sized. Looking forward to your contributions, Andres (current editor) --- topics New suggestions for current hot topics, activities, projects, etc. are welcome - especially with names and addresses of potential contacts, but here is a non-exclusive list of likely topics (see also http://www.haskell.org/communities/topics.html ): General Haskell developments Haskell implementations Haskell extensions Standardization (Haskell', ...) Documentation Libraries Papers and Books Feedback Summaries of discussions in specialist mailing lists Conference reports Community activities Other Haskell information channels (TMR, Sequence, HWN, ...) Announcements Upcoming Haskell events Everything that's new or has had new releases Ongoing projects Reports on what's happening behind the scenes Confirmations that projects are still maintained Calls for contributions and contributors Tutorials Tools and Applications Released and unreleased Haskell applications Tools useful for Haskell programmers Experiences with using Haskell for a project Commercial uses of Haskell Even if your topic is not listed in this list, there's a good chance it has a place in the Report. Please get in touch with me. If you want to see an entry that hasn't been there in the past, but you are not the maintainer of the project, then please encourage the maintainers to write an entry/update, or ask permission to write the entry yourself. -- what should I write? That depends on your topic, but as a general rule, it shouldn't take you long. A simple sentence or two about your use of Haskell could go into the Individual Haskellers section. If you're a company, or if you're working on a project using Haskell as the implementation language, a paragraph on that could go into the Applications section. A typical summary report about a tool/library/project/application/... would be between 1 and 3 paragraphs of ASCII text (what's it about? major topics and results since the last report? current hot topics? major goals for the next six months?) plus pointers to material for further reading (typically to a home page, or to mailing list archives, specifications and drafts, implementations, meetings, minutes, ...). Browsing through previous editions should give you a good idea of the variety of possibilities, ranging from very brief to extensive. For those who prefer templates to fill in, the report is edited in LaTeX, and an entry template might look something like this: \begin{hcarentry}{(MYSTUFF)} \report{(MY NAME)} \status{(PROJECT STATUS IN ONE LINE)} \participants{(PARTICIPANTS OTHER THAN MYSELF)}% optional \makeheader
Re: writing / status teams - call for volunteers
Would anyone else like to volunteer to write a section of the report for specific proposals below? In == #74: add some kind of concurrency: SM, HN, IJ #35: add ForeignFunctionInterface: MC, SM #49: add multi parameter type classes: MS #60: add RankNTypes or Rank2Types: AL #57: add polymorphic components: AL #26: add ExistentialQuantification (existential components): AL, MS, SJT #24: add HierarchicalModules: BH, IJ #25: add EmptyDataDeclarations: BH, HN #23: fix common pitfall with the do-notation and if-then-else: SM, HN, #42: fix comment syntax grammar: SM #56: add Pattern Guards: :( #78: Add infix type constructors: BH, AL Help w/ libraries (yay!): IJ, BH, SM, RP, DS I would like to start writing a new section on the syntax of data type declarations. All the proposals I've put my name on are somewhat related to this area, most of all existential quantification and infix type constructors. Have we already discussed how we produce new text for the report? Is this supposed to be all on the Wiki, or are we going to modify the TeX sources of the Haskell-98 report? Is the plan to keep the general style and structure of the Haskell-98 report, or are we going to rewrite and restructure the whole report? Cheers, Andres ___ Haskell-prime mailing list Haskell-prime@haskell.org http://www.haskell.org/mailman/listinfo/haskell-prime
Re: Exceptions
Hi Ashley. Thanks for your interest in open data types. As one of the authors of the open data types paper, I'd like to comment on the current discussion. You comment Simon's upcoming HW paper on extensible exceptions: You write: Compared to our approach, theirs requires new extensions to the language (although not deep), Typeable is an extension to Haskell, and a rather ugly one at that. The open datatypes extension is both cleaner and more general. I think the stress here is on *new* extensions. I agree that an open type of type representations might be a more beautiful solution to the problem that Typeable solves. Nevertheless, the fact is that Simon's solution can be used in current GHC without further implementation work. and has difficulties with separate compilation. They claim to solve this I think, though I haven't examined it really carefully. You may know better, of course. I've discussed this with Simon PJ. Apart from minor technical problems, everything seems doable in GHC, but it is quite some work and it's not clear that I will have the time to study GHC closely enough to do it in the near future. I hope I can say more after the Hackathon ... Arguably the open data types approach is more direct and more accessible, Yes, as is often the case with extensions designed to solve a particular problem. That's not fair. Open datatypes have other applications. A general file interpreter for instance, that given a MIME type string and a list of bytes yields an object. Or a collection of variable resources of various types that could be passed to a program. Or a hierarchy of UI widgets. Or anything that Typeable and Dynamic are currently used for, but more cleanly. Hs-plugins, for instance. It's the missing piece. True, open data types have never been invented as a solution to the problem of extensible exceptions. It is an application that we found afterwards. Still, the argument for adding open data types to the language is weakened by the fact that they are subsumed by type classes: in fact the authors give an encoding of open data types into type classes, Well not really. The encoding involves lifting everything from values to types, which means a function still can't return a value of an open type determined at run-time. Even if both approaches would be equally expressive, the type class encoding still has a lot of syntactic overhead. Moving from a closed to an open data type encoded by type classes requires changing your whole program, whereas with open data types, it is a local change. Apart from this discussion however, open data types are clearly not Haskell' material, because the proposal is new and currently unimplemented. The extensions required for Simon's approach to exceptions have a good chance of being included in Haskell'. Cheers, Andres ___ Haskell-prime mailing list Haskell-prime@haskell.org http://www.haskell.org/mailman/listinfo/haskell-prime
[Haskell] Haskell Workshop 2006 Call for participation
Please note that the early registration deadline is August 18, 2006. Cheers, Andres --- ACM SIGPLAN 2006 Haskell Workshop Call for Participation Portland, Oregon Sunday, September 17, 2006 --- The Haskell Workshop 2006 will be part of the 2006 International Conference on Functional Programming (ICFP). The purpose of the Haskell Workshop is to discuss experience with Haskell, and possible future developments for the language. The scope of the workshop includes all aspects of the design, semantics, theory, application, implementation and teaching of Haskell. Preliminary Schedule 08:25 Welcome Session I 08:30 Stephanie Weirich (University of Pennsylvania) RepLib: A Library for Derivable Type Classes 09:00 Deling Ren and Martin Erwig (Oregon State University) A Generic Recursion Toolbox for Haskell (Or: Scrap Your Boilerplate Systematically) 09:30 Alexandra Silva (CWI, The Netherlands) and Joost Visser (Universidade do Minho, Portugal) Strong Types for Relational Databases (Functional Pearl) 10:00 Break Session II 10:30 Koji Kagawa (RISE, Kagawa University) Polymorphic Variants in Haskell 11:00 Dana N. Xu (University of Cambridge) Extended Static Checking for Haskell 11:30 Philip Derrin, Kevin Elphinstone, Gerwin Klein, David Cock and Manuel M.T. Chakravarty (University of New South Wales) Running the Manual: An Approach to High-Assurance Microkernel Development 12:00 Iavor S. Diatchki (OGI) and Mark P. Jones (Portland State University) Strongly Typed Memory Areas -- Programming Systems-Level Data Structures in a Functional Language 12:30 Lunch Session III 14:00 Peter Thiemann (Universität Freiburg) User-Level Transactional Programming in Haskell 14:30 Simon Marlow (Microsoft Research) An Extensible Dynamically-Typed Hierarchy of Exceptions 15:00 David Himmelstrup (Denmark) Demo: Interactive Debugging with GHCi 15:15 Andy Gill (Galois Connections) Demo: Introducing the Haskell Equational Reasoning Assistant 15:30 Break Session IV 16:00 Program Chair Report 16:15 Eric Kow (LORIA) GenI: Natural Language Generation in Haskell 16:45 Frederik Eaton Demo: Typed Linear Algebra 17:00 Isaac Jones (Galois Connections) Haskell' Status Report -- An Update on the Next Haskell Standard Session V 17:15 Discussion: The Future of Haskell Program Committee Koen Claessen, Chalmers University, Sweden Bastiaan Heeren, Universiteit Utrecht, The Netherlands Paul Hudak, Yale University, US Isaac Jones, Galois Connections, US Gabriele Keller, University of New South Wales, Australia Oleg Kiselyov, FNMOC, US Andres Loeh (chair), Universitaet Bonn, Germany Conor McBride, University of Nottingham, UK Shin-Cheng Mu, Academia Sinica, Taiwan Andrew Tolmach, Portland State University, US ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
Re: [Haskell] ANNOUNCE: HNOP 0.1
Could you perhaps write a Haskell Weekly News entry for this? It might also be worth contacting Andres Löh and seeing if we can get a late entry into the Haskell Communities and Activities Report, this seems critical enough. I agree that it is pretty critical, but I'll rather do a HNOP this time, and instead give it a prominent position in the November edition (if I receive a project report). Cheers, Andres ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] ANNOUNCE: Haskell Communities Activities Report (10th ed., June 2006)
On behalf of the many, many contributors, I am pleased to announce that the Haskell Communities and Activities Report (10th edition, June 2006) http://www.haskell.org/communities/ is now available from the Haskell Communities home page in several formats: PDF, for screenreading as well as printing, HTML, for those of you who prefer not to deal with plugins or external viewers, and PostScript, for those of you who have nice quick printers that do not grok PDF. Many thanks go to all the people that contributed to this report, both directly, by sending in descriptions, and indirectly, by doing all the interesting things that are reported. I hope you will find it as interesting a read as we did. If you haven't encountered the Haskell Communities and Activities Reports before, you may like to know that the first of these reports was published in November 2001. Their goal is to improve the communication between the increasingly diverse groups, projects and individuals working on, with, or inspired by Haskell. The idea behind these reports is simple: Every six months, a call goes out to all of you enjoying Haskell to contribute brief summaries of your own area of work. Many of you respond (eagerly, unprompted, and well in time for the actual deadline ;) ) to the call. The editor collects all the contributions into a single report and feeds that back to the community. When we try for the next update, six months from now, you might want to report on your own work, project, research area or group as well. So, please put the following into your diaries now: End of October 2006: target deadline for contributions to the November 2006 edition of the HCA Report Unfortunately, many Haskellers working on interesting projects are so busy with their work that they seem to have lost the time to follow the Haskell related mailing lists and newsgroups, and have trouble even finding time to report on their work. If you are a member, user or friend of a project so burdened, please find someone willing to make time to report and ask them to `register' with the editor for a simple e-mail reminder in the middle of October (you could point me to them as well, and we can then politely ask if they want to contribute, but it might work better if you do the initial asking). Of course, they will still have to find the ten to fifteen minutes to draw up their report, but maybe we can increase our coverage of all that is going on in the community. Feel free to circulate this announcement further in order to reach people who might otherwise not see it. Enjoy! Andres Loeh hcar at haskell.org -- Haskell Communities and Activities Report (http://haskell.org/communities) ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
Re: [Haskell] REMINDER: HCA Report (extended deadline: 15 May 2006)
If you would extend the deadline to sometime after May 23, when the accepted Haskell.org SoC applications are revealed, you could perhaps get a lot of new projects to the list. I would rather not do this. It is already later than in the previous years for the May edition, and due to other commitments, I definitely want to get the Report released before the end of May (and it usually needs at least a week, if not more, after the deadline, to go through all the submissions). The next Report is already in November, and will be a perfect opportunity to report on all the SoC projects. For this issue, I would propose that someone writes a summary of haskell.org's SoC participation (please!), which could possibly include a list of the accepted projects (I don't think it would be a problem to include such a list on very short notice into an already submitted article, and it is unlikely that the Report will actually appear before May 23 for the abovementioned reasons). Cheers, Andres ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] REMINDER: HCA Report (extended deadline: 15 May 2006)
Dear Haskellers, the deadline for the May 2006 edition of the Haskell Communities and Activities Report is only a few days away -- but this is still enough time to make sure that the report contains a section on *your* project, on the interesting stuff that you've been doing; using or affecting Haskell in some way. Many projects that have been included in former reports have not yet updated their entries. Please have a look at the November 2005 edition for reference. * Has your project been listed in previous Reports, but is not yet updated? Please write a short update! * Are you no longer working on a project that was included in the Report? Write up what you are working on instead, and tell me if someone else has picked up the project. * Is some project you have heard about not included in any previous Report? Please let me know ... There is still time to write a completely new entry, on a new compiler, tool, library, company, user group, idea, ... -- as long as there is a connection to the Haskell language, there is a place for it in the Report! I have slightly extended the deadline. Submissions are now due by next Monday, that is 15 May 2006. Please mail your entries to hcar at haskell dot org, in plain text or pseudo-(La)TeX format. More information can be found in the original Call for Contributions at http://www.haskell.org/pipermail/haskell/2006-April/017861.html I look forward to receiving your contributions. Thanks a lot, Andres (current editor) -- Haskell Communities and Activities Report (http://haskell.org/communities) 05/2006 edition extended submission deadline: 15 May 2006 [EMAIL PROTECTED] ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] Haskell Workshop 2006 Second call for papers
Apologies for multiple copies; feel free to distribute further. Cheers, Andres ACM SIGPLAN 2006 Haskell Workshop Call for Papers Portland, Oregon 17 September, 2006 The Haskell Workshop 2006 will be part of the 2006 International Conference on Functional Programming (ICFP) as an associated, ACM SIGPLAN sponsored workshop. Previous Haskell Workshops have been held in La Jolla (1995), Amsterdam (1997), Paris (1999), Montreal (2000), Firenze (2001), Pittsburgh (2002), Uppsala (2003), Snowbird (2004), and Tallinn (2005). Topics The purpose of the Haskell Workshop is to discuss experience with Haskell, and possible future developments for the language. The scope of the workshop includes all aspects of the design, semantics, theory, application, implementation, and teaching of Haskell. Topics of interest include, but are not limited to, the following: * Language Design, with a focus on possible extensions and modifications of Haskell as well as critical discussions of the status quo; * Theory, in the form of a formal treatment of the semantics of the present language or future extensions, type systems, and foundations for program analysis and transformation; * Implementations, including program analysis and transformation, static and dynamic compilation for sequential, parallel, and distributed architectures, memory management as well as foreign function and component interfaces; * Tools, in the form of profilers, tracers, debuggers, pre-processors, and so forth; * Applications, Practice, and Experience with Haskell for scientific and symbolic computing, database, multimedia and Web applications, and so forth as well as general experience with Haskell in education and industry; * Functional Pearls being elegant, instructive examples of using Haskell. Papers in the latter two categories need not necessarily report original research results; they may instead, for example, report practical experience that will be useful to others, re-usable programming idioms, or elegant new ways of approaching a problem. The key criterion for such a paper is that it makes a contribution from which other practitioners can benefit. It is not enough simply to describe a program! Submission details Submission deadline: Friday, 2 June 2006 (23:00 Samoa standard time, UTC -11) Notification:Monday, 3 July 2006 Authors should send their papers to Andres Loeh ([EMAIL PROTECTED]) by e-mail. Submitted papers should be in (postscript or) portable document format, formatted using the ACM SIGPLAN style guidelines. Papers should not exceed 12 pages in length. Accepted papers will be published by the ACM and will appear in the ACM Digital Library. If there is sufficient demand, we will try to organise a time slot for system or tool demonstrations. If you are interested in demonstrating a Haskell related tool or application, please send a brief demo proposal to Andres Loeh ([EMAIL PROTECTED]). Programme Committee Koen Claessen, Chalmers University, Sweden Bastiaan Heeren, Universiteit Utrecht, The Netherlands Paul Hudak, Yale University, US Isaac Jones, Galois Connections, US Gabriele Keller, University of New South Wales, Australia Oleg Kiselyov, FNMOC, US Andres Loeh (chair), Universitaet Bonn, Germany Conor McBride, University of Nottingham, UK Shin-Cheng Mu, Academia Sinica, Taiwan Andrew Tolmach, Portland State University, US ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] Re: haskell.org libraries and tools page needs some fixing
BB I recently wanted to add some libraries to BB http://www.haskell.org/haskellwiki/Libraries_and_tools and noticed a BB number of problems. there is also HCAR report. my thoughts is what we should create some central repository including libs/apps/papers/communities and so on and replace both this page and HCAR with it. then anyone should include himself here and edit the info as progress does. Such a proposal comes up every once in a while, and it certainly sounds like a good idea. But I don't think it will work. From my experience, getting a HCAR done is not only a lot of fun, but also quite a bit of work. I think that it is a good thing to have a fixed point in time when people involved in the Haskell community are actively approached and asked and pushed to write up what they have done. In the HCAR, you can see for every single entry if it has been updated or not (and stuff that is outdated is removed). The result is archived as a stable point of reference. With a central repository, chances are good that no one really feels responsible, and it will be difficult to reach the same level of breadth and quality. You certainly can get rid of these advantages by assigning an editor and some rules ... but why, really, do you want to replace the HCAR with anything? What do you dislike about it? Cheers, Andres ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] ANNOUNCE: lhs2tex-1.11
lhs2TeX version 1.11 We are pleased to announce a new release of lhs2TeX, a preprocessor to generate LaTeX code from literate Haskell sources. lhs2TeX includes the following features: * Highly customized output. * Liberal parser -- no restriction to Haskell 98. * Generate multiple versions of a program or document from a single source. * Active documents: call Haskell to generate parts of the document (useful for papers on Haskell). * A manual explaining all the important aspects of lhs2TeX. Changes (w.r.t. lhs2TeX 1.9) [Note that 1.10 has never been released to avoid confusion with some privately distributed versions.] * Specification code is now handled correctly (that is, ignored) in the code and newcode styles. * Comments and Pragmas are handled in a better way by the newcode style. * There are some new forms of implicit formatting directives. * The LaTeX code produced in the poly style looks slightly more beautiful. * There is a new Library section, containing some frequently used formatting directives. * Generation of file/linenumber directives in the produced LaTeX code, for Stefan Wehr's adjust tool. Based on a patch submitted by Stefan Wehr. * lhs2TeX can now replace ghc's literate preprocessor. * Improved efficiency of \eval and \perform (to call ghci or hugs from lhs2TeX documents). Requirements and Download - A source distribution that should be suitable for Unix-based environments is available from http://www.iai.uni-bonn.de/~loeh/lhs2tex/ It has been verified to build on Linux and MacOSX. Binaries will be made available on request. You need a recent version of GHC (6.4.1 is tested, 6.2.2 might work) to build lhs2TeX, and, of course, you need a TeX distribution to make use of lhs2TeX's output. The program includes a configuration that is suitable for use with LaTeX. In theory, there should be no problem to generate code for other TeX flavors, such as plainTeX or ConTeXt. Happy lhs2TeXing, Andres Loeh and Ralf Hinze [EMAIL PROTECTED] [EMAIL PROTECTED] ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
Re: [Haskell-cafe] Decidable type systems? (WAS: Associated Type Synonyms question)
Can someone explain to me why decidability is of any practical interest at all? What's the (practical) difference between a decision procedure which might never terminate and one which might take 1,000,000 years to terminate? Actually, why push it out to 1,000,000 years: in the context of a compiler for a practical programming language, a decision procedure which might take an hour to terminate might as well be undecidable ... surely all we really need is that the decision procedure _typically_ terminates quickly, and that where it doesn't we have the means of giving it hints which ensure that it will. I'm tempted to agree with you. I don't care if the compiler terminates on all my programs, or if it sometimes quits and says: I don't know if this is correct. However, I do think that it is of very much importance that programmers and compiler implementors know which programs are legal and which are not. If a problem is decidable, it has the nice property that the problem (*not* the algorithm) can be used as a specification. Implementors are free to implement different algorithms, as long as they all solve the problem. If the problem is undecidable, how do you make sure that different compilers accept the same programs? If you don't want to find a subproblem that is decidable, you'll have to specify an algorithm, which is usually far more complicated, error-prone, and difficult to grasp for programmers. Cheers, Andres ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell] Haskell Workshop 2006 Call for papers
Apologies for multiple copies; feel free to distribute further. Cheers, Andres ACM SIGPLAN 2006 Haskell Workshop Call for Papers Portland, Oregon 17 September, 2006 The Haskell Workshop 2006 will be part of the 2006 International Conference on Functional Programming (ICFP) as an associated, ACM SIGPLAN sponsored workshop. Previous Haskell Workshops have been held in La Jolla (1995), Amsterdam (1997), Paris (1999), Montreal (2000), Firenze (2001), Pittsburgh (2002), Uppsala (2003), Snowbird (2004), and Tallinn (2005). Topics The purpose of the Haskell Workshop is to discuss experience with Haskell, and possible future developments for the language. The scope of the workshop includes all aspects of the design, semantics, theory, application, implementation, and teaching of Haskell. Topics of interest include, but are not limited to, the following: * Language Design, with a focus on possible extensions and modifications of Haskell as well as critical discussions of the status quo; * Theory, in the form of a formal treatment of the semantics of the present language or future extensions, type systems, and foundations for program analysis and transformation; * Implementations, including program analysis and transformation, static and dynamic compilation for sequential, parallel, and distributed architectures, memory management as well as foreign function and component interfaces; * Tools, in the form of profilers, tracers, debuggers, pre-processors, and so forth; * Applications, Practice, and Experience with Haskell for scientific and symbolic computing, database, multimedia and Web applications, and so forth as well as general experience with Haskell in education and industry; * Functional Pearls being elegant, instructive examples of using Haskell. Papers in the latter two categories need not necessarily report original research results; they may instead, for example, report practical experience that will be useful to others, re-usable programming idioms, or elegant new ways of approaching a problem. The key criterion for such a paper is that it makes a contribution from which other practitioners can benefit. It is not enough simply to describe a program! Submission details Submission deadline: 2 June 2006 Notification:3 July 2006 Submitted papers should be in postscript or portable document format, formatted using the ACM SIGPLAN style guidelines. The length should be restricted to 12 pages. Detailed submission instructions will be available at http://haskell.org/haskell-workshop/2006. Accepted papers will be published by the ACM and will appear in the ACM Digital Library. If there is sufficient demand, we will try to organise a time slot for system or tool demonstrations. If you are interested in demonstrating a Haskell related tool or application, please send a brief demo proposal to Andres Loeh ([EMAIL PROTECTED]). Programme Committee Koen Claessen, Chalmers University, Sweden Bastiaan Heeren, Universiteit Utrecht, The Netherlands Paul Hudak, Yale University, US Isaac Jones, Galois Connections, US Gabriele Keller, University of New South Wales, Australia Oleg Kiselyov, FNMOC, US Andres Loeh (chair), Universitaet Bonn, Germany Conor McBride, University of Nottingham, UK Shin-Cheng Mu, Academia Sinica, Taiwan Andrew Tolmach, Portland State University, US ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
Re: Parallel list comprehensions
I noticed ticket #55--add parallel list comprehensions--which according to the ticket, will probably be adopted. I would argue against. [Several good points removed.] I agree. Cheers, Andres ___ Haskell-prime mailing list Haskell-prime@haskell.org http://haskell.org/mailman/listinfo/haskell-prime
Re: Bugs with GADTs in GHC6.4.1
The attached script induces panic in GHC6.4.1: ghc-6.4.1: panic! (the `impossible' happened, GHC version 6.4.1): applyTypeToArgs f{v a1Eg} x{v a1Ei}. I think this is related to a known bug, because the same workaround helps -- annotate the f and x arguments in the last line of your program with dummy type variables, and the program will be accepted: zap :: Vector n (a - b) - Vector n a - Vector n b zap fs xs = unfoldv f (len fs) (VP (fs, xs)) where f :: VectorPair (a-b) a (S n) - (b, VectorPair (a-b) a n) f (VP (VCons (f :: foo) fs, VCons (x :: bar) xs)) = (f x, VP (fs, xs)) Cheers, Andres ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: bug in GADT typechecking
{-# OPTIONS_GHC -fglasgow-exts #-} module Main where data Foo a b where Foo :: Int - Foo a b data Patch a b where PP :: Foo a b - Patch a b Lis :: PL a b - Patch a b data PL a b where U :: Patch a b - PL a b Nil :: PL x x (:-) :: PL c d - PL d e - PL c e data Pair alpha omega where (:.) :: Patch a i - Patch i o - Pair a o foo :: Pair a b - Maybe (Pair a b) foo (Lis (U x :- y) :. Lis Nil) = Just (PP x :. Lis y) Oddly enough, the code *does* typecheck if we change the above line to foo (Lis (U a :- b) :. Lis Nil) = Just (Lis (U a) :. Lis b) which differs only in here Looks to me as if ghc is right to complain. PP takes a Foo, but U takes a Patch. Therefore the x that's matched on the lhs is a Patch, not a Foo. test.lhs:27:44: Couldn't match `Foo a b' against `Patch a1 d' Expected type: Foo a b Inferred type: Patch a1 d In the first argument of `PP', namely `x' In the first argument of `(:.)', namely `PP x' Glasgow Haskell Compiler, Version 6.4, for Haskell 98, compiled by GHC version 6.4 FWIW, same error with ghc-6.5 from a few weeks ago. Cheers, Andres ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
[Haskell] ANNOUNCE: Haskell Communities Activities Report (9th ed., November 2005)
On behalf of the many, many contributors, I am pleased to announce that the Haskell Communities and Activities Report (9th edition, November 2005) http://www.haskell.org/communities/ is now available from the Haskell Communities home page in several formats: PDF, for screenreading as well as printing, HTML, for those of you who prefer not to deal with plugins or external viewers, and PostScript, for those of you who have nice quick printers that do not grok PDF. Many thanks go to all the people that contributed to this report, both directly, by sending in descriptions, and indirectly, by doing all the interesting things that are reported. I hope you will find it as interesting a read as we did. If you haven't encountered the Haskell Communities and Activities Reports before, you may like to know that the first of these reports was published in November 2001. Their goal is to improve the communication between the increasingly diverse groups, projects and individuals working on, with, or inspired by Haskell. The idea behind these reports is simple: Every six months, a call goes out to all of you enjoying Haskell to contribute brief summaries of your own area of work. Many of you respond (eagerly, unprompted, and well in time for the actual deadline ;) ) to the call. The editor collects all the contributions into a single report and feeds that back to the community. When we try for the next update, six months from now, you might want to report on your own work, project, research area or group as well. So, please put the following into your diaries now: End of April 2006: target deadline for contributions to the May 2006 edition of the HCA Report Unfortunately, many Haskellers working on interesting projects are so busy with their work that they seem to have lost the time to follow the Haskell related mailing lists and newsgroups, and have trouble even finding time to report on their work. If you are a member, user or friend of a project so burdened, please find someone willing to make time to report and ask them to `register' with the editor for a simple e-mail reminder in the middle of April (you could point me to them as well, and we can then politely ask if they want to contribute, but it might work better if you do the initial asking). Of course, they will still have to find the ten to fifteen minutes to draw up their report, but maybe we can increase our coverage of all that is going on in the community. Feel free to circulate this announcement further in order to reach people who might otherwise not see it. Enjoy! Andres Loeh hcar at haskell.org -- Haskell Communities and Activities Report (http://haskell.org/communities) ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell] REMINDER: Contributions to the HCA Report (November 2005 edition)
Dear Haskellers, the deadline for the November 2006 edition of the Haskell Communities and Activities Report is only a few days away -- but this is still enough time to make sure that the report contains a section on *your* project, on the interesting stuff that you've been doing; using or affecting Haskell in some way. Many projects that have been included in former reports have not yet updated their entries. Please have a look at http://haskell.org/communities/topics.html and at the May 2005 edition for reference. * Has your project been listed in previous Reports, but is not yet updated? Please write a short update! * Are you no longer working on a project that was included in the Report? Write up what you are working on instead, and tell me if someone else has picked up the project. * Is some project you have heard about not included in any previous Report? Please let me know ... There is still time to write a completely new entry, on a new compiler, tool, library, company, user group, idea, ... -- as long as there is a connection to the Haskell language, there is a place for it in the Report! Submissions are due by next Tuesday, that is Tuesday, 01 November 2005. Please mail your entries to hcar at haskell dot org, in plain text or pseudo-(La)TeX format. More information can be found in the original Call for Contributions at http://www.haskell.org/pipermail/haskell/2005-October/016575.html I look forward to receiving your contributions. Thanks a lot, Andres (current editor) -- Haskell Communities and Activities Report (http://haskell.org/communities) 11/2005 edition submission deadline: 01 November 2005 [EMAIL PROTECTED] ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell-cafe] REMINDER: Contributions to the HCA Report (November 2005 edition)
Dear Haskellers, the deadline for the November 2006 edition of the Haskell Communities and Activities Report is only a few days away -- but this is still enough time to make sure that the report contains a section on *your* project, on the interesting stuff that you've been doing; using or affecting Haskell in some way. Many projects that have been included in former reports have not yet updated their entries. Please have a look at http://haskell.org/communities/topics.html and at the May 2005 edition for reference. * Has your project been listed in previous Reports, but is not yet updated? Please write a short update! * Are you no longer working on a project that was included in the Report? Write up what you are working on instead, and tell me if someone else has picked up the project. * Is some project you have heard about not included in any previous Report? Please let me know ... There is still time to write a completely new entry, on a new compiler, tool, library, company, user group, idea, ... -- as long as there is a connection to the Haskell language, there is a place for it in the Report! Submissions are due by next Tuesday, that is Tuesday, 01 November 2005. Please mail your entries to hcar at haskell dot org, in plain text or pseudo-(La)TeX format. More information can be found in the original Call for Contributions at http://www.haskell.org/pipermail/haskell/2005-October/016575.html I look forward to receiving your contributions. Thanks a lot, Andres (current editor) -- Haskell Communities and Activities Report (http://haskell.org/communities) 11/2005 edition submission deadline: 01 November 2005 [EMAIL PROTECTED] ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell] PROPOSAL: class aliases
One thought: how will class aliases interact with type inference? e.g. if a declaration contains only a call to 'foo', should we infer the constraint Foo a, or FooBar a? Can there ever be a situation where choosing the more specific dictionary could leave us without a 'bar' method at some later point in the computation? (cf. up-casting and down-casting in OO languages). If I declare a function baz :: Bar a = ... and then pass it a value which actually has a FooBar dictionary rather than just a Bar, will the implementation be able to find the right offset in the dictionary for the 'bar' method? How? (I know jhc eliminates dictionaries at compile-time, but other implementations do not.) The way I understand the proposal, there are no FooBar dictionaries ever. John said that this can be translated by a source-to-source translation, so internally, a FooBar dictionary *is* a Foo and a Bar dictionary. How much static checking can be done before desugaring the code? Will it be possible to give sensible error messages, or will those mention the internal classes that the alias is supposed to hide? Cheers, Andres ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
Re: GADT question
I get an error No instance for (Fractional a) arising from the use of '/' This seems odd to me, since Div is constrained to have fractional arguments. Is there something obvious I'm missing? Unless GADTs are handled specially, and I don't think they are in this case, this problem is not specific to GADTs but related to how type constraints on constructors are handled in general. Basically, a constraint on a constructor has no effect beyond beyond constraining what the constructor can be applied to (see the Haskell 98 report 4.2.1). In particular, when you take a constructed value apart through pattern matching, the constraints do not come into play: hence the no instance message. I think this is the correct explanation. However, it might be confusing that IsZ :: Num a = Term a - Term Bool and eval (IsZ t) = eval t == 0 works correctly. The difference here is that for IsZ, the compiler will store a Num dictionary within the constructed value, because a is existentially quantified. On the other hand, in Div :: Fractional a = Term a - Term a - Term a the a is visible on the outside, so the compiler does not store a dictionary. But then, while computing the pattern match eval (Div t u) = eval t / eval u there's really no way to create one. So, the question is, why cannot the compiler treat the case for Div more like the case for IsZ and store the Fractional dictionary within the constructor? It has been suggested a number of times that constraints on constructors should have a more profound meaning, and maybe GADTs make this even more desirable, as your example suggest. I think they do. Maybe the work that has already been done on GADTs and existentials finally make it possible to give an improved semantics to constraints on datatypes without too much additional work. Cheers, Andres ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: problems building ghc 6.4.1_pre using 6.4 with multiplecabalversions installed
Just glancing over the patch, I can't immediately see how it works. GHC 6.4 gives priority to package modules over modules on the local search path, so Distribution.* will be taken from the installed Cabal package. However, when linking GHC you are ommitting -package Cabal, so I'd expect a link error. Hmm, I guess I should try this and figure out what's happening. The idea is that no installed Cabal version will be used. I think the ghc distribution should just always build its own Cabal during stage1. That's what the patch tries to achieve, and afaics, it works. However, Duncan didn't give you the full story with the patch. We also do the following: echo GHC+=-ignore-package Cabal mk/build.mk echo HC+=-ignore-package Cabal mk/build.mk This was the only way I could find to make sure that a preinstalled Cabal is ignored whenever the preinstalled ghc is called, but not once the in-place ghc is available. Cheers, Andres ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
-odir behaviour change in 6.4.1?
Is this change in behaviour between ghc-6.4 and ghc-6.4.1 desired: ~/trans $ ls foo foo.c ~/trans $ ghc-6.4 -odir foo -c foo/foo.c ~/trans $ ls foo foo.c foo.o ~/trans $ rm foo/foo.o ~/trans $ ls foo foo.c ~/trans $ ghc-6.4.1.20050804 -odir foo -c foo/foo.c ~/trans $ ls foo foo foo.c ~/trans $ ls foo/foo foo.o It seems to break cabal-1.1.1, in the case that I have something like c-sources: foo/foo.c in my .cabal file ... Cheers, Andres ___ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
small error in building.xml
A recent change to the stable branch seems to have introduced a slight error in docs/building/building.xml. In line 3822, a /screen tag is missing. The version that has this bug is 1.13.2.11. Cheers, Andres ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
[Haskell] ANNOUNCE: Haskell Communities Activities Report (8th ed., May 2005)
On behalf of the many, many contributors, I am pleased to announce that the Haskell Communities and Activities Report (8th edition, May 2005) http://www.haskell.org/communities/ is now available from the Haskell Communities home page in several formats: PDF, for screenreading as well as printing, HTML, for those of you who prefer not to deal with plugins or external viewers, and PostScript, for those of you who have nice quick printers that do not grok PDF. Many thanks go to all the people that contributed to this report, both directly, by sending in descriptions, and indirectly, by doing all the interesting things that are reported. I hope you will find it as interesting a read as we did. If you haven't encountered the Haskell Communities and Activities Reports before, you may like to know that the first of these reports was published in November 2001. Their goal is to improve the communication between the increasingly diverse groups, projects and individuals working on, with, or inspired by Haskell. The idea behind these reports is simple: Every six months, a call goes out to all of you enjoying Haskell to contribute brief summaries of your own area of work. Many of you respond (eagerly, unprompted, and well in time for the actual deadline ;) ) to the call. The editor collects all the contributions into a single report and feeds that back to the community. When we try for the next update, six months from now, you might want to report on your own work, project, research area or group as well. So, please put the following into your diaries now: End of October 2005: target deadline for contributions to the November 2005 edition of the HCA Report Unfortunately, many Haskellers working on interesting projects are so busy with their work that they seem to have lost the time to follow the Haskell related mailing lists and newsgroups, and have trouble even finding time to report on their work. If you are a member, user or friend of a project so burdened, please find someone willing to make time to report and ask them to `register' with the editor for a simple e-mail reminder in the middle of October (you could point us to them as well, and we can then politely ask if they want to contribute, but it might work better if you do the initial asking). Of course, they will still have to find the ten to fifteen minutes to draw up their report, but maybe we can increase our coverage of all that is going on in the community. Feel free to circulate this announcement further in order to reach people who might otherwise not see it. Enjoy! Andres Loeh hcar at haskell.org andres at cs.uu.nl -- Haskell Communities and Activities Report (http://haskell.org/communities) ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell-cafe] ANNOUNCE: Haskell Communities Activities Report (8th ed., May 2005)
On behalf of the many, many contributors, I am pleased to announce that the Haskell Communities and Activities Report (8th edition, May 2005) http://www.haskell.org/communities/ is now available from the Haskell Communities home page in several formats: PDF, for screenreading as well as printing, HTML, for those of you who prefer not to deal with plugins or external viewers, and PostScript, for those of you who have nice quick printers that do not grok PDF. Many thanks go to all the people that contributed to this report, both directly, by sending in descriptions, and indirectly, by doing all the interesting things that are reported. I hope you will find it as interesting a read as we did. If you haven't encountered the Haskell Communities and Activities Reports before, you may like to know that the first of these reports was published in November 2001. Their goal is to improve the communication between the increasingly diverse groups, projects and individuals working on, with, or inspired by Haskell. The idea behind these reports is simple: Every six months, a call goes out to all of you enjoying Haskell to contribute brief summaries of your own area of work. Many of you respond (eagerly, unprompted, and well in time for the actual deadline ;) ) to the call. The editor collects all the contributions into a single report and feeds that back to the community. When we try for the next update, six months from now, you might want to report on your own work, project, research area or group as well. So, please put the following into your diaries now: End of October 2005: target deadline for contributions to the November 2005 edition of the HCA Report Unfortunately, many Haskellers working on interesting projects are so busy with their work that they seem to have lost the time to follow the Haskell related mailing lists and newsgroups, and have trouble even finding time to report on their work. If you are a member, user or friend of a project so burdened, please find someone willing to make time to report and ask them to `register' with the editor for a simple e-mail reminder in the middle of October (you could point us to them as well, and we can then politely ask if they want to contribute, but it might work better if you do the initial asking). Of course, they will still have to find the ten to fifteen minutes to draw up their report, but maybe we can increase our coverage of all that is going on in the community. Feel free to circulate this announcement further in order to reach people who might otherwise not see it. Enjoy! Andres Loeh hcar at haskell.org andres at cs.uu.nl -- Haskell Communities and Activities Report (http://haskell.org/communities) ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: [Haskell-cafe] lhs2TeX and line numbers in error messages produced by LaTeX
I use lhs2TeX for typesetting literate haskell code. The problem is that LaTeX uses the line numbers from the .tex file generated by lhs2TeX and not the line number from the original .lhs file when producing error messages. Does anyone have a solution for this problem? Sorry, I don't. I think it's very much work to change lhs2TeX so that the generated .tex file will have the same line numbers than the original (%include would have to be mapped to \input statements and each code block would have to produce exactly as many lines as the input was etc.), and AFAIK LaTeX does not have any such thing as LINE pragmas. I usually look at the generated file to find what LaTeX complains about and map this to the original location mentally. I could make lhs2TeX generate line hints as LaTeX comments, to facilitate this process, but this would still require to read the generated file, because the hints wouldn't be interpreted by LaTeX automatically. Cheers, Andres ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell] REMINDER: Contributions to the HCA Report (May 2005 edition)
Dear Haskellers, the deadline for the May 2005 edition of the Haskell Communities and Activities Report is only a few days away -- but this is still enough time to make sure that the report contains a section on *your* project, on the interesting stuff that you've been doing; using or affecting Haskell in some way. Many projects that have been included in former reports have not yet updated their entries. Please have a look at http://haskell.org/communities/topics.html and at the November 2004 edition for reference. * Has your project been listed in previous Reports, but is not yet updated? Please write a short update! * Are you no longer working on a project that was included in the Report? Write up what you are working on instead, and tell me if someone else has picked up the project. * Is some project you have heard about not included in any previous Report? Please let me know ... There is still time to write a completely new entry, on a new compiler, tool, library, company, user group, idea, ... -- as long as there is a connection to the Haskell language, there is a place for it in the Report! Submissions are due by next Tuesday, that is Tuesday, 03 May 2005. Please mail your entries to hcar at haskell dot org, in plain text or pseudo-(La)TeX format. More information can be found in the original Call for Contributions at http://www.haskell.org/pipermail/haskell/2005-April/015688.html I look forward to receiving your contributions. Thanks a lot, Andres (current editor) -- Haskell Communities and Activities Report (http://haskell.org/communities) 05/2005 edition submission deadline: 03 May 2005 [EMAIL PROTECTED] ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
[Haskell-cafe] REMINDER: Contributions to the HCA Report (May 2005 edition)
Dear Haskellers, the deadline for the May 2005 edition of the Haskell Communities and Activities Report is only a few days away -- but this is still enough time to make sure that the report contains a section on *your* project, on the interesting stuff that you've been doing; using or affecting Haskell in some way. Many projects that have been included in former reports have not yet updated their entries. Please have a look at http://haskell.org/communities/topics.html and at the November 2004 edition for reference. * Has your project been listed in previous Reports, but is not yet updated? Please write a short update! * Are you no longer working on a project that was included in the Report? Write up what you are working on instead, and tell me if someone else has picked up the project. * Is some project you have heard about not included in any previous Report? Please let me know ... There is still time to write a completely new entry, on a new compiler, tool, library, company, user group, idea, ... -- as long as there is a connection to the Haskell language, there is a place for it in the Report! Submissions are due by next Tuesday, that is Tuesday, 03 May 2005. Please mail your entries to hcar at haskell dot org, in plain text or pseudo-(La)TeX format. More information can be found in the original Call for Contributions at http://www.haskell.org/pipermail/haskell/2005-April/015688.html I look forward to receiving your contributions. Thanks a lot, Andres (current editor) -- Haskell Communities and Activities Report (http://haskell.org/communities) 05/2005 edition submission deadline: 03 May 2005 [EMAIL PROTECTED] ___ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell] Call for Contributions -- HCA Report (May 2005 edition)
Dear Haskellers, it is nearly time for the eighth edition of the Haskell Communities Activities Report http://www.haskell.org/communities/ Submission deadline: 03 May 2005 (please send your contributions to hcar at haskell.org, in plain ASCII or LaTeX format) This is the short story: * If you are working on any project that is in some way related to Haskell, write a short entry and submit it to the me. * If you are interested any project related to Haskell that has not previously been mentioned in the HCA Report, tell me, so that I can contact the project leaders and ask them to submit an entry. * Feel free to pass on this call for contributions to others that might be interested. More detailed information: The Haskell Communities Activities Report is a bi-annual overview of the state of Haskell as well as Haskell-related projects over the last, and possibly the upcoming 6 months. If you have only recently been exposed to Haskell, it might be a good idea to browse the November 2004 edition -- you will find interesting topics described as well as several starting points and links that may provide answers to many questions. Contributions will be collected until the beginning of May. They will be compiled into a coherent report which will appear sometime during May. As always, this is a great opportunity to update your webpages, make new releases, announce of even start new projects, or to point at some developments you want every Haskeller to see! As the purpose of the report is to collect recent or current activities, we encourage you to update all existing summaries and reports. We will probably drop any topics that have not had any activity for the past year, i.e., since May 2004, but we would very much prefer you to present an updated description of the topic. Of course, new entries are more than welcome. Reports should generally be kept brief and informative, ranging from a few sentences to a few hundred words, to keep the whole report reasonably sized. Looking forward to your contributions, Andres (current editor) --- topics New suggestions for current hot topics, activities, projects, etc. are welcome - especially with names and addresses of potential contacts, but here is a non-exclusive list of likely topics (see also http://www.haskell.org/communities/topics.html ): General Haskell developments; Haskell implementations; Haskell extensions; Standardization and documentation; Haskell tutorials, howtos and wikis; Organisation of Haskell tool and library development; Haskell-related projects and publications; new research, fancy tools, long-awaited libraries, cool applications; Feedback from specialist mailing lists to the Haskell community as a whole; Haskell announcements; all (recent) things Haskell Announcements: if you've announced anything new on the Haskell list over the last six months, you'll want to make sure that is reflected in this edition! Project pings: if you're maintaining a Haskell tool or library or somesuch, you'll want to let everyone know that it is still alive and actively maintained, even if there have been no new additions, but all the more if there have been new developments. Tutorials: if you've fought with some previously undocumented corner of Haskell, and have been kind enough to write down how you did manage to build that graphical user interface, or if you've written a tutorial about some useful programming techniques, this is your opportunity to spread the word (short, topic-specific, and hands-on tutorials that only show how to achieve a certain practical task would do a lot to make things easier for new Haskellers - please write some!) Applications: if you've been working quietly, using Haskell for some interesting project or application (commercial or otherwise), you might want to let others know about what you're using Haskell for, and about your experiences using the existing tools and libraries; are you using Haskell on your job? An interesting thread about using Haskell and more generally functional programming for non-Haskell things seems to recur with reasonable frequency - why not write a sentence or two about your use of Haskell for our report? Feedback: if you're on one of the many specialist Haskell mailing lists, you'll want to report on whatever progress has been made there (GUI API discussions, library organisation, etc.) If you're unsure whether a contact for your area of work has come forward yet, have a look at the report's potential topics page, or get in touch with me. I have contacted last time's contributors, hoping they will volunteer to provide updates of their
[Haskell-cafe] Call for Contributions -- HCA Report (May 2005 edition)
Dear Haskellers, it is nearly time for the eighth edition of the Haskell Communities Activities Report http://www.haskell.org/communities/ Submission deadline: 03 May 2005 (please send your contributions to hcar at haskell.org, in plain ASCII or LaTeX format) This is the short story: * If you are working on any project that is in some way related to Haskell, write a short entry and submit it to the me. * If you are interested any project related to Haskell that has not previously been mentioned in the HCA Report, tell me, so that I can contact the project leaders and ask them to submit an entry. * Feel free to pass on this call for contributions to others that might be interested. More detailed information: The Haskell Communities Activities Report is a bi-annual overview of the state of Haskell as well as Haskell-related projects over the last, and possibly the upcoming 6 months. If you have only recently been exposed to Haskell, it might be a good idea to browse the November 2004 edition -- you will find interesting topics described as well as several starting points and links that may provide answers to many questions. Contributions will be collected until the beginning of May. They will be compiled into a coherent report which will appear sometime during May. As always, this is a great opportunity to update your webpages, make new releases, announce of even start new projects, or to point at some developments you want every Haskeller to see! As the purpose of the report is to collect recent or current activities, we encourage you to update all existing summaries and reports. We will probably drop any topics that have not had any activity for the past year, i.e., since May 2004, but we would very much prefer you to present an updated description of the topic. Of course, new entries are more than welcome. Reports should generally be kept brief and informative, ranging from a few sentences to a few hundred words, to keep the whole report reasonably sized. Looking forward to your contributions, Andres (current editor) --- topics New suggestions for current hot topics, activities, projects, etc. are welcome - especially with names and addresses of potential contacts, but here is a non-exclusive list of likely topics (see also http://www.haskell.org/communities/topics.html ): General Haskell developments; Haskell implementations; Haskell extensions; Standardization and documentation; Haskell tutorials, howtos and wikis; Organisation of Haskell tool and library development; Haskell-related projects and publications; new research, fancy tools, long-awaited libraries, cool applications; Feedback from specialist mailing lists to the Haskell community as a whole; Haskell announcements; all (recent) things Haskell Announcements: if you've announced anything new on the Haskell list over the last six months, you'll want to make sure that is reflected in this edition! Project pings: if you're maintaining a Haskell tool or library or somesuch, you'll want to let everyone know that it is still alive and actively maintained, even if there have been no new additions, but all the more if there have been new developments. Tutorials: if you've fought with some previously undocumented corner of Haskell, and have been kind enough to write down how you did manage to build that graphical user interface, or if you've written a tutorial about some useful programming techniques, this is your opportunity to spread the word (short, topic-specific, and hands-on tutorials that only show how to achieve a certain practical task would do a lot to make things easier for new Haskellers - please write some!) Applications: if you've been working quietly, using Haskell for some interesting project or application (commercial or otherwise), you might want to let others know about what you're using Haskell for, and about your experiences using the existing tools and libraries; are you using Haskell on your job? An interesting thread about using Haskell and more generally functional programming for non-Haskell things seems to recur with reasonable frequency - why not write a sentence or two about your use of Haskell for our report? Feedback: if you're on one of the many specialist Haskell mailing lists, you'll want to report on whatever progress has been made there (GUI API discussions, library organisation, etc.) If you're unsure whether a contact for your area of work has come forward yet, have a look at the report's potential topics page, or get in touch with me. I have contacted last time's contributors, hoping they will volunteer to provide updates of their
Re: exposed package exposes dependent packages
Our example was compiling happy. happy does not import anything from cabal-0.5 and yet it was hit by this problem. Unless we consider 'part of the program' to be all modules in all exposed packages (and all modules in 'efectively exposed' packages like util via the cabal-0.5 dep). You're asking GHC to decide which modules the program depends on, in order to figure out which packages are part of the program, rather than just starting from the list of exposed packages. Hmm, that might be possible... we could eagerly report module clashes in the exposed packages, but only report module clashes in the hidden packages when we know which ones are required. This sounds like a good compromise to me. It would allow to have some packages exposed which are not particularly well-behaved (i.e., pollute the name space), but you pay the price only when you're actually using the package. The current situation is unfortunately very fragile. An exposed package that is accidentally added to the system can break the compilation of completely unrelated programs. It'd be great if you could make this change in ghc. Cheers, Andres ___ Glasgow-haskell-bugs mailing list Glasgow-haskell-bugs@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
[Haskell] ANNOUNCE: Generic Haskell 1.42 (Coral)
Generic Haskell version 1.42 (Coral) We are happy to announce the third release of Generic Haskell, an extension of Haskell that facilitates generic programming. Generic Haskell includes the following features: * type-indexed values -- generic functions that can be instantiated on all Haskell data types. * type-indexed types -- types which are indexed over the type constructors underlying Haskell datatypes. The Generic Haskell compiler takes Generic Haskell source and produces Haskell code. Changes since 1.23 (Beryl) -- * Dependency-style Generic Haskell [1] is supported, i.e., generic functions can be written in a simpler and more natural style. In particular, type signatures of generic functions have become simpler -- there is no need to define kind-indexed types any longer. * Local redefinition, generic abstraction, and default cases are now implemented as described in Exploring Generic Haskell [2]. Download The Generic Haskell compiler is available in source and binary distributions. Binaries for Linux, Windows, and MacOSX are available. These are available from: http://www.generic-haskell.org/compiler.html The documentation is also available separately from that page. For more general information, point your browser to: http://www.generic-haskell.org Why Generic Haskell? Software development often consists of designing datatypes, around which functionality is added. Some functionality is datatype specific, whereas other functionality is defined on almost all datatypes in such a way that it depends only on the structure of the datatype. A function that works on many datatypes in this way is called a generic function. Examples of generic functionality include editing, pretty-printing or storing a value in a database, and comparing two values for equality. Since datatypes often change and new datatypes are introduced, we have developed Generic Haskell, an extension of the functional programming language Haskell that supports generic definitions, to save the programmer from (re)writing instances of generic functions. The original design of Generic Haskell is based on work by Ralf Hinze. Pleasant programming, The Generic Haskell Team at Utrecht University [EMAIL PROTECTED] [1] A. Loeh, D. Clarke, and J. Jeuring. Dependency-style Generic Haskell. In O. Shivers, editor, Proceedings of the International Conference on Functional Programming, ICFP'03, pages 141--152. ACM Press, August 2003. [2] A. Loeh. Exploring Generic Haskell. PhD thesis, Utrecht University, September 2004. ___ Haskell mailing list Haskell@haskell.org http://www.haskell.org/mailman/listinfo/haskell
Re: [Haskell-cafe] The difference between ($) and application
Date: Tue, 14 Dec 2004 10:24:15 -0500 From: Andrew Pimlott [EMAIL PROTECTED] Subject: Re: [Haskell-cafe] The difference between ($) and application On Tue, Dec 14, 2004 at 11:23:24AM +0100, Henning Thielemann wrote: On Tue, 14 Dec 2004, Andrew Pimlott wrote: (Of course, it's still useful, by itself or in a slice, as a higher-order operator.) You can also use 'id' in this cases, right? I'm thinking of things like zipWith ($) map ($ x) You can indeed use zipWith id map (`id` x) instead. Look at the types: id :: a - a ($) :: (a - b) - (a - b) The function ($) is the identity function, restricted to functions. Nevertheless, I find using ($) in such a situation more descriptive than using id. Cheers, Andres ___ Haskell-Cafe mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell] ANNOUNCE: Haskell Communities Activities Report (7th ed., November 2004)
Right in time, I am pleased to announce -- on behalf of the many contributers -- that the Haskell Communities and Activities Report (7th edition, November 2004) http://www.haskell.org/communities/ is now available from the Haskell Communities home page in several formats: PDF, for screenreading as well as printing, HTML, for those of you who prefer not to deal with plugins or external viewers, and PostScript, for those of you who have nice quick printers that do not grok PDF. Many thanks go to all the people that contributed to this report, both directly, by sending in descriptions, and indirectly, by doing all the interesting things that are reported. I hope you will find it as interesting a read as we did. If you haven't encountered the Haskell Communities and Activities Reports before, you may like to know that the first of these reports was published in November 2001. Their goal is to improve the communication between the increasingly diverse groups, projects and individuals working on, with, or inspired by Haskell. The idea behind these reports is simple: Every six months, a call goes out to all of you enjoying Haskell to contribute brief summaries of your own area of work. Many of you respond (eagerly, unprompted, and well in time for the actual deadline ;) ) to the call. The editor collects all the contributions into a single report and feeds that back to the community. When we try for the next update, six months from now, you might want to report on your own work, project, research area or group as well. So, please put the following into your diaries now: End of April 2005: target deadline for contributions to the May 2005 edition of the HCA Report Unfortunately, many Haskellers working on interesting projects are so busy with their work that they seem to have lost the time to follow the Haskell related mailing lists and newsgroups, and have trouble even finding time to report on their work. If you are a member, user or friend of a project so burdened, please find someone willing to make time to report and ask them to `register' with the editor for a simple e-mail reminder in the middle of April (you could point us to them as well, and we can then politely ask if they want to contribute, but it might work better if you do the initial asking). Of course, they will still have to find the ten to fifteen minutes to draw up their report, but maybe we can increase our coverage of all that is going on in the community. Feel free to circulate this announcement further in order to reach people who might otherwise not see it. Enjoy! Andres Loeh [EMAIL PROTECTED] [EMAIL PROTECTED] -- Haskell Communities and Activities Report (http://haskell.org/communities) ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
[Haskell-cafe] ANNOUNCE: Haskell Communities Activities Report (7th ed., November 2004)
Right in time, I am pleased to announce -- on behalf of the many contributers -- that the Haskell Communities and Activities Report (7th edition, November 2004) http://www.haskell.org/communities/ is now available from the Haskell Communities home page in several formats: PDF, for screenreading as well as printing, HTML, for those of you who prefer not to deal with plugins or external viewers, and PostScript, for those of you who have nice quick printers that do not grok PDF. Many thanks go to all the people that contributed to this report, both directly, by sending in descriptions, and indirectly, by doing all the interesting things that are reported. I hope you will find it as interesting a read as we did. If you haven't encountered the Haskell Communities and Activities Reports before, you may like to know that the first of these reports was published in November 2001. Their goal is to improve the communication between the increasingly diverse groups, projects and individuals working on, with, or inspired by Haskell. The idea behind these reports is simple: Every six months, a call goes out to all of you enjoying Haskell to contribute brief summaries of your own area of work. Many of you respond (eagerly, unprompted, and well in time for the actual deadline ;) ) to the call. The editor collects all the contributions into a single report and feeds that back to the community. When we try for the next update, six months from now, you might want to report on your own work, project, research area or group as well. So, please put the following into your diaries now: End of April 2005: target deadline for contributions to the May 2005 edition of the HCA Report Unfortunately, many Haskellers working on interesting projects are so busy with their work that they seem to have lost the time to follow the Haskell related mailing lists and newsgroups, and have trouble even finding time to report on their work. If you are a member, user or friend of a project so burdened, please find someone willing to make time to report and ask them to `register' with the editor for a simple e-mail reminder in the middle of April (you could point us to them as well, and we can then politely ask if they want to contribute, but it might work better if you do the initial asking). Of course, they will still have to find the ten to fifteen minutes to draw up their report, but maybe we can increase our coverage of all that is going on in the community. Feel free to circulate this announcement further in order to reach people who might otherwise not see it. Enjoy! Andres Loeh [EMAIL PROTECTED] [EMAIL PROTECTED] -- Haskell Communities and Activities Report (http://haskell.org/communities) ___ Haskell-Cafe mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: typechecking too eager?
Hi there, The following code should compile (If the constructor is valid, so is the function): data Test = Test (forall a . a) test a = Test a However this fails to compile with the following error: The current implementation of rank-n polymorphism (which is documented in the paper Pratical type inference for arbitrary-rank types) does not guess polymorphic types for lambda-abstracted values. In this situation, this means that the variable a is assumed to have a monorphic type, which then cannot be passed to Test as an argument. Knowledge about polymorphism is passed down/inwards, but not up/outwards. This definition typechecks only if you add a type signature: test :: (forall a . a) - Test If you want to know the reasons, read the paper. It explains the problems very well. Cheers, Andres ___ Glasgow-haskell-users mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
[Haskell] REMINDER: Contributions to the HCA Report (November 2004 edition)
Dear Haskellers, the deadline for the November 2004 edition of the Haskell Communities and Activities is approaching quickly -- but there are still a few days left to make sure that the report contains a section on *your* project, on the interesting stuff that you've been doing, using or affecting Haskell in some way. In particular, any information regarding upcoming, Haskell-related, events is highly appreciated (conferences, workshops, summer schools ...). Many FP research groups have not yet updated their reports. Furthermore, please have a look at http://haskell.org/topics.html * Is your project listed, but not yet updated? Please write a short update! * Is a project listed that you are no longer working on? Write up what you are working on instead, and tell me if someone else has picked up the project. * Is something you have heard about not in the list? Please let me know ... There is still time to write a completely new entry, on a new compiler, tool, library, company, user group, idea, ... -- as long as there is a connection to the Haskell language, there is a place for it in the report! Submissions are due by the end of this week, that is Friday, 29 October 2004. Please mail your entries to hcar at haskell dot org, in plain text or pseudo-(La)TeX format. I look forward to receiving your contributions. Thanks a lot, Andres (current editor) -- Haskell Communities and Activities Report (http://haskell.org/communities) 11/2004 edition submission deadline: 29 October 2004 [EMAIL PROTECTED] ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
[Haskell] Re: REMINDER: Contributions to the HCA Report (November 2004 edition)
Sorry, the link was incorrect. The pointer should have been: Furthermore, please have a look at http://haskell.org/communities/topics.html Cheers, Andres -- Haskell Communities and Activities Report (http://haskell.org/communities) 11/2004 edition submission deadline: 29 October 2004 [EMAIL PROTECTED] ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
[Haskell-cafe] REMINDER: Contributions to the HCA Report (November 2004 edition)
Dear Haskellers, the deadline for the November 2004 edition of the Haskell Communities and Activities is approaching quickly -- but there are still a few days left to make sure that the report contains a section on *your* project, on the interesting stuff that you've been doing, using or affecting Haskell in some way. In particular, any information regarding upcoming, Haskell-related, events is highly appreciated (conferences, workshops, summer schools ...). Many FP research groups have not yet updated their reports. Furthermore, please have a look at http://haskell.org/topics.html * Is your project listed, but not yet updated? Please write a short update! * Is a project listed that you are no longer working on? Write up what you are working on instead, and tell me if someone else has picked up the project. * Is something you have heard about not in the list? Please let me know ... There is still time to write a completely new entry, on a new compiler, tool, library, company, user group, idea, ... -- as long as there is a connection to the Haskell language, there is a place for it in the report! Submissions are due by the end of this week, that is Friday, 29 October 2004. Please mail your entries to hcar at haskell dot org, in plain text or pseudo-(La)TeX format. I look forward to receiving your contributions. Thanks a lot, Andres (current editor) -- Haskell Communities and Activities Report (http://haskell.org/communities) 11/2004 edition submission deadline: 29 October 2004 [EMAIL PROTECTED] ___ Haskell-Cafe mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell-cafe
[Haskell-cafe] Re: REMINDER: Contributions to the HCA Report (November 2004 edition)
Sorry, the link was incorrect. The pointer should have been: Furthermore, please have a look at http://haskell.org/communities/topics.html Cheers, Andres -- Haskell Communities and Activities Report (http://haskell.org/communities) 11/2004 edition submission deadline: 29 October 2004 [EMAIL PROTECTED] ___ Haskell-Cafe mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell-cafe
Re: deriving...
| Why not even simply | | instance Typeable (T a) | | In other words, derivable classes define default | implementations for all their methods. But that has an existing meaning! It means use the default methods for all methods of the class. Which is not the same as derive all methods. I was thinking about the proposed syntax in the Derivable Type Classes paper, which was just this. In classic Haskell, I can see that it is problematic whenever default methods are specified in terms of each other, like (==) and (/=) in Eq. I would then vote for It'd have to be instance Typeable (T a) deriving Perhaps it would be not much harder to allow instance Show MyChar deriving where showList = ... to partially override derived functions as well. The trouble is, as you mention, that instance decls usually have a context. I'd be quite happy to require a context in these derived instances too, so you have to write derive instance Typeable a = Typeable (T a) Then it looks more like a regular instance decl. Yes, even though it's more to write, I think it's cleaner if the context is specified. After all, the old deriving syntax within the data declaration will continue to be available for compatibility. Cheers, Andres ___ Glasgow-haskell-users mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: deriving...
Simon Peyton-Jones wrote: derive( Typeable (T a) ) But that means adding 'derive' as a keyword. Other possibilities: deriving( Typeable (T a) ) -- (B) Re-use 'deriving' keyword The trouble with (B) is that the thing inside the parens is different in this situation than in a data type declaration. Any other ideas? instance Typeable (T a) deriving Why not even simply instance Typeable (T a) In other words, derivable classes define default implementations for all their methods. Advantages: (1) no syntax change at all required (2) derived class instances can be partially redefined by the user Disadvantages: (1) Slightly more work in some cases because a complete instance declaration is required. Example: instance Eq a = Eq (T a) Cheers, Andres ___ Glasgow-haskell-users mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
[Haskell] Call for Contributions -- HCA Report (November 2004 edition)
Dear Haskellers, another six months have passed, and another change of editor has occurred. Half a year usually also is plenty of time for several productive changes and news to occur within the Haskell community, and therefore it is time for you to start writing: please contribute to the forthcoming seventh edition of the Haskell Communities Activities Report http://www.haskell.org/communities/ Submission deadline: 29 October 2004 (please send your contributions to [EMAIL PROTECTED], in plain ASCII or LaTeX format) The Haskell Communities Activities Report is a bi-annual overview of the state of Haskell as well as Haskell-related projects over the last, and possibly the upcoming 6 months. If you have only recently been exposed to Haskell, it might be a good idea to browse the May 2004 edition -- you will find interesting topics described as well as several starting points and links that may provide answers to many questions. The plan is to collect contributions until roughly the end of October, then start to compile them into a coherent report which will appear during November. As always, this is a great opportunity to update your webpages, make new releases, announce of even start new projects, or to point at some developments you want every Haskeller to see! As the purpose of the report is to collect recent or current activities, we encourage you to update all existing summaries and reports. We will drop any topics that have not had any activity for the past year, i.e., since November 2003, but we would very much prefer you to present an updated description of the topic. Of course, new entries are more than welcome. Reports should generally be kept brief and informative, ranging from a few sentences to a few hundred words, to keep the whole report reasonably sized. Looking forward to your contributions, Andres (current editor) --- topics New suggestions for current hot topics, activities, projects, etc. are welcome - especially with names and addresses of potential contacts, but here is a non-exclusive list of likely topics (see also http://www.haskell.org/communities/topics.html ): General Haskell developments; Haskell implementations; Haskell extensions; Standardization and documentation; Haskell tutorials, howtos and wikis; Organisation of Haskell tool and library development; Haskell-related projects and publications; new research, fancy tools, long-awaited libraries, cool applications; Feedback from specialist mailing lists to the Haskell community as a whole; Haskell announcements; all (recent) things Haskell Announcements: if you've announced anything new on the Haskell list over the last six months, you'll want to make sure that is reflected in this edition! Project pings: if you're maintaining a Haskell tool or library or somesuch, you'll want to let everyone know that it is still alive and actively maintained, even if there have been no new additions, but all the more if there have been new developments. Tutorials: if you've fought with some previously undocumented corner of Haskell, and have been kind enough to write down how you did manage to build that graphical user interface, or if you've written a tutorial about some useful programming techniques, this is your opportunity to spread the word (short, topic-specific, and hands-on tutorials that only show how to achieve a certain practical task would do a lot to make things easier for new Haskellers - please write some!) Applications: if you've been working quietly, using Haskell for some interesting project or application (commercial or otherwise), you might want to let others know about what you're using Haskell for, and about your experiences using the existing tools and libraries; are you using Haskell on your job? An interesting thread about using Haskell and more generally functional programming for non-Haskell things seems to recur with reasonable frequency - why not write a sentence or two about your use of Haskell for our report? Feedback: if you're on one of the many specialist Haskell mailing lists, you'll want to report on whatever progress has been made there (GUI API discussions, library organisation, etc.) If you're unsure whether a contact for your area of work has come forward yet, have a look at the report's potential topics page, or get in touch with me. I have contacted last time's contributors, hoping they will volunteer to provide updates of their reports, and will update the contacts on the topics page fairly regularly. But where you don't yet see contacts listed for your own subject of interest, you are very welcome to volunteer, or to remind
Re: HOpenGL buglet
Sven's fix that Simon M. mentioned will appear in 6.2.2 is included in the Gentoo ebuild ghc-6.2.1-r1.ebuild . If it still doesn't work with that version, please report it as a Gentoo bug on bugs.gentoo.org. Cheers, Andres ___ Glasgow-haskell-bugs mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs
Re: [wxhaskell-users] RE: [Haskell] Dynamically loading wxhaskell?
That is probably the problem. I did not see all messages of this thread, but one should indeed use --with-opengl on wxHaskell configure if wxWidgets was build with --with-opengl. Unfortunately, due to wxWidgets changes, I can not automatically detect the need for this flag, but I promise to discuss it with the wxWidgets devs. I think this has been discussed before: as far as I can see, the flag --with-opengl is always safe, and should therefore be the default. The call to wx-config --gl-libs returns the empty string if wxWidgets has not been built using GL. Best, Andres ___ Glasgow-haskell-users mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-users
Re: [Haskell] Parsing Typed Data from a String
So my question is, is there any method in GHC which allows you to extract the order of the constructors in a type or to parse a type-representation in such a way that the order of the records doesn't matter (I am looking for ease/simplicity of use)? If you happen to use Parsec for parsing -- it has permutation parser combinators in Text.ParserCombinators.Parsec.Perm. So has the UUST parser combinator library, in UU.Parsing.Perms. Best, Andres ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
Re: Getting lhs2tex working under Win32 (was Re: ANNOUNCE: lhs2tex-1.9)
Thanks for producing such a wonderful and useful tool! Nice to hear that you find it useful. Thank you very much for sharing your results. I am pleased to report that I managed to get lhs2TeX working on Win32, by modifying just a single byte in the source code. 1. In the lhs2TeX sources, change line 42 of FileNameUtils.lhs from: environmentSeparators = ;: to: environmentSeparators = ; and do another make install. Yes, that's a good fix for Windows. Actually, I copied this code from Generic-Haskell, and simplified it because I only needed it for Unix and did not have time to test it under Windows anyway. For the next release, I will try to merge the full Generic-Haskell library, which defines environmentSeparators and a few other functions in several OSSpecific.hs files, one of which can, depending on architecture, be included by lhs2TeX. Instead, I propose that it would be very valuable if there were some standardized, portable library that Haskell programs like lhs2TeX could use for locating files that should be installed with the program. [...] I agree on all that. I even think that there probably are several projects that have done most of that already, and that it would just be necessary to collect some source code and streamline the interface. I like the Python interface, BTW. It seems simple and pragmatic enough. Thanks again. Andres ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
ANNOUNCE: lhs2tex-1.9
lhs2TeX version 1.9 === We are pleased to announce the first official release of lhs2TeX, a preprocessor to generate LaTeX code from literate Haskell sources. lhs2TeX includes the following features: * Different styles to process your source file: for instance, tt style uses a monospaced font for the code while still allowing you to highlight keywords etc, whereas poly style uses proportional fonts for identifiers, handles indentation nicely, is able to replace binary operators by mathematical symbols and take care of complex horizontal alignments. * Formatting directives, which let you customize the way certain tokens in the source code should appear in the processed output. * A liberal parser that can handle most of the language extensions; you don't have to restrict yourself to Haskell 98. * Preprocessor-style conditionals that allow you to generate different versions of a document from a single source file (for instance, a paper and a presentation). * Active documents: you can use Haskell to generate parts of the document (useful for papers on Haskell). * A manual explaining all the important aspects of lhs2TeX. Changes --- Although development on lhs2TeX has begun as early as 1997, it has never been formally released before. This is a first release that should be mostly compatible to versions that have been inofficially distributed so far. It should compile with the latest GHC versions. Two completely new modes have been added compared to previous versions: poly mode is designed to replace the old math mode; the restriction of having only one alignment column per code block is lifted and replaced by a generic mechanism that allows complex layouts; newcode is a replacement for the old code mode that can handle formatting directives and produces LINE pragmas in the generated code. Requirements and Download - A source distribution that should be suitable for Unix-based environments is available from http://www.cs.uu.nl/~andres/lhs2tex/ It has been verified to build on Linux and MacOSX. You need a recent version of GHC (5.04.X or higher should do) to build lhs2TeX, and, of course, you need a TeX distribution to make use of lhs2TeX's output. The program includes a configuration that is suitable for use with LaTeX. In theory, there should be no problem to generate code for other TeX flavors, such as plainTeX or ConTeXt. Happy lhs2TeXing, Ralf Hinze and Andres Loeh [EMAIL PROTECTED] [EMAIL PROTECTED] ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell
Re: ANNOUNCE: lhs2tex-1.9
In theory, there should be no problem to generate code for other TeX flavors, such as plainTeX or ConTeXt. Any plan to maybe add support for ConteXt? Not now. Maybe in half a year or so. I am using ConTeXt for some things, so sooner or later it would be nice to support it. If you don't want poly style (i.e. only math), it's only the matter of writing some directives which is not hard -- I think I even have an experimental .fmt file lying around somewhere. But poly style depends on polytable.sty, and this package has to be translated into a ConTeXt module, which should be possible, but would take more time, unfortunately, than I have right now. Sorry. Of course, you're welcome to try yourself. Patches are welcome. Best, Andres ___ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell