From coreyoconnor at gmail.com Thu Oct 1 01:06:35 2009 From: coreyoconnor at gmail.com (Corey O'Connor) Date: Thu Oct 1 00:44:30 2009 Subject: [Haskell] Re: [Haskell-cafe] ANNOUNCE: vty-ui 0.1 In-Reply-To: <20090930043530.GA31155@janrain.com> References: <20090930043530.GA31155@janrain.com> Message-ID: On Tue, Sep 29, 2009 at 9:35 PM, Jonathan Daugherty wrote: > vty-ui is: > > An extensible library of user interface widgets for composing and > laying out Vty user interfaces. This library provides a collection of > widgets and a type class for rendering widgets to Vty Images. Cool! I'll be sure to test these out when working on Vty :-D Thanks! Corey O'Connor From ivan.miljenovic at gmail.com Thu Oct 1 08:04:16 2009 From: ivan.miljenovic at gmail.com (Ivan Lazar Miljenovic) Date: Thu Oct 1 07:42:21 2009 Subject: [Haskell] ANNOUNCE: SourceGraph 0.5.1.0 Message-ID: <8763azjp6n.fsf@gmail.com> This is an updated version of my graph-theoretic static analysis tool for Haskell, SourceGraph. This version is available from http://hackage.haskell.org/package/SourceGraph-0.5.1.0 (now with docs on the Hackage page!). This version provides the ability to pass in a single Haskell source file rather than a Cabal file for analysis purposes. Note that the Cabal version is still preferred as it is better able to determine the project name and which modules are exported: when using a single source file, that file is presumed to be the only exported module and its module name is used as the overall project name. This feature was requested by Curt Sampson. -- Ivan Lazar Miljenovic Ivan.Miljenovic@gmail.com IvanMiljenovic.wordpress.com From v.dijk.bas at gmail.com Thu Oct 1 09:53:50 2009 From: v.dijk.bas at gmail.com (Bas van Dijk) Date: Thu Oct 1 09:31:45 2009 Subject: [Haskell] ANNOUNCE: usb-0.1 Message-ID: Hello, I would like to announce the release of usb-0.1, a Haskell library for communicating with USB devices from userspace. usb is implemented as a high-level wrapper around Maur?cio C. Antunes' bindings-libusb which is a binding to the C library: libusb-1.* ( http://libusb.org ). All functionality from libusb is provided except for asynchronous IO. I'm still thinking about if and how I should add that. As usual, install usb using cabal: > cabal install usb Or download and install it manually from hackage: http://hackage.haskell.org/package/usb-0.1 Or get the development source using darcs: darcs get http://code.haskell.org/~basvandijk/code/usb Comments and patches are highly welcome. Note that this is the first release, so expect API changes in the future. Note that my brother uploaded 'usb-id-database' to hackage. A small library for associating usb identifiers like vendor, product, class, subclass or prototcol identifiers with their respective names and vice versa: http://hackage.haskell.org/package/usb-id-database This can be helpful when trying to find the right device to operate. In a short while, the package 'ls-usb' will be released. This is a simple program for showing all the usb devices currently attached to your system. It's a nice demonstration on how to use the library. regards, Bas From martijn at van.steenbergen.nl Thu Oct 1 10:02:26 2009 From: martijn at van.steenbergen.nl (Martijn van Steenbergen) Date: Thu Oct 1 09:40:26 2009 Subject: [Haskell] ANNOUNCE: usb-0.1 In-Reply-To: References: Message-ID: <4AC4B672.9000000@van.steenbergen.nl> Bas van Dijk wrote: > Comments and patches are highly welcome. I tried to install on my Mac but bindings-common choked on: > cabal install bindings-common Resolving dependencies... cabal: Error: some packages failed to install: bindings-common-1.1 failed while unpacking the package. The exception was: /var/folders/mR/mRFqQvztFo0URT0d6GN9wE+++TI/-Tmp-/bindings-common-1.174967/bindings-common-1.1/src/Bindings: createDirectory: does not exist (No such file or directory) Not sure if this is interesting to you, Bas, but I thought I'd share. :-) Groetjes, Martijn. From wss at cs.nott.ac.uk Thu Oct 1 10:33:43 2009 From: wss at cs.nott.ac.uk (Wouter Swierstra) Date: Thu Oct 1 10:11:40 2009 Subject: [Haskell] New TMR editor Message-ID: Dear all, After several years at the helm, I've decided to step down as editor of the Monad.Reader. I am happy to announce that Brent Yorgey will take over my role as editor. I'd like to take this opportunity to thank Brent for helping to keep the Monad.Reader alive. I'm sure he'll do a fantastic job. Finally, I'd like to thank all the people who have contributed to the Monad.Reader over the last few years ? you guys have made this publication, and my job as an editor, so much fun. All the best, Wouter From bernardy at chalmers.se Thu Oct 1 11:13:05 2009 From: bernardy at chalmers.se (Jean-Philippe Bernardy) Date: Thu Oct 1 10:50:59 2009 Subject: [Haskell] Testing polymorphic properties with QuickCheck Message-ID: <953e0d250910010813q18949186n1c31877c22465ee8@mail.gmail.com> ----------------------------------------------------------------------- This message is a literate Haskell file, hence: > {-# LANGUAGE GADTs#-} -- a matter of style only > import Control.Monad.State hiding (mapM) > import Control.Applicative > import Data.Traversable > import Data.Foldable > import Data.Monoid > import Test.QuickCheck --------------------------------------------------------------------- Hello everyone, This message is my answer a common question coming from QuickCheck users: "How do I use QuickCheck on polymorphic properties?". The answer also applies to all test generators for Haskell (SmallCheck, ...). Consider the following polymorphic property: > prop_reverse_append :: Eq a => [a] -> [a] -> Bool > prop_reverse_append xs ys = reverse (xs ++ ys) == reverse xs ++ reverse ys Running QuickCheck on that property is possible, but... < quickCheck prop_reverse_append < ... 100 tests passed! Even though the property is false, it passes QuickCheck, because GHC has defaulted |a| to |()|, and the unit type cannot capture any difference in the content of the lists. The usual QuickCheck answer is to force using |Int| for |a|: > prop_reverse_append_Int :: [Int] -> [Int] -> Bool > prop_reverse_append_Int = prop_reverse_append While sound, this is highly unsatisfactory: 1. Many tests will be redundant. For example, if |prop_reverse_append [1] [2]| holds, then |prop_reverse_append [a] [b]| holds for any choice of a and b. So if the first test passes, it is useless to test |prop_reverse_append [1] [3]|, |prop_reverse_append [1] [4]|, etc. Unfortunately, QuickCheck does not realize this and may perform all these tests. 2. Some tests will be weaker than necessary. For example, testing |prop_reverse_append| with elements that are equal to each other is a waste: this might only hide bugs in the implementation, as when we used the unit type. In fact, one should test |prop_reverse_append| only once for each length of the input lists, and the elements in the lists should all be different from each other. Note that this observation applies not only to |prop_reverse_append|, but to all properties of the same type. In the remainder I will show how to generalize the argument, and give a systematic method to compute a monomorphic property which is as strong as a polymorphic one. This is done only by looking at the type of the property. The basic idea is to identify all the ways that the property can construct elements of the polymorphic type (say |a|), and represent this in a datatype. For example, the type |Eq a => [a] -> [a] -> Bool| tells us that the property can construct an element by picking any element from the first or the second list. This yields the datatype: > data A where > XsElement :: Int -> A > YsElement :: Int -> A > deriving (Eq, Show) Which we can substitute for the type variable. The gain comes from the fact that we also know how to fill in the input lists, yielding the monomorphic property: > prop_reverse_append_Mono :: [()] -> [()] -> Bool > prop_reverse_append_Mono xs ys > = prop_reverse_append (combine XsElement xs) (combine YsElement ys) where |combine f| replaces the |i|:th element in the list with |f i|. Generalization 1 ---------------- It is worth noting that "observations", that is, elements which do not return any |a|, do not play any role in the monomorphisation process. This is illustrated in the next example, about testing a filter-like function: > prop_filter :: Eq a => (a -> Bool) -> [a] -> Bool > prop_filter = error "add your definition here" > prop_filter_Mono :: (A -> Bool) -> [()] -> Bool > prop_filter_Mono p xs = prop_filter p (combine XsElement xs) Generalization 2 ---------------- Arguments which return |a| are turned into constructors of the monomorphic datatype, and then fixed. > prop_iterate :: Eq a => a -> (a -> a) -> Bool > prop_iterate = error "add your definition here" > data B where > Initial :: B > Next :: B -> B > deriving (Eq, Show) > prop_iterate_Mono = prop_iterate Initial Next Note that the more polymorphic the function is, the more the arguments become fixed. In the above case, all quantifiers disappear. Notes ----- Note that the technique works only for first order polymorphic arguments. We do not have a generalization for higher order ones. Also, extra care must be taken in the presence of type classes constraints: they may "hide" constructors. More examples and applications, together with the theory behind all this can be found in a paper I co-authored with Patrik Jansson and Koen Claessen: http://publications.lib.chalmers.se/cpl/record/index.xsql?pubid=99387 or direct link to the pdf: http://www.cse.chalmers.se/~bernardy/PolyTest.pdf Cheers, Jean-Philippe Bernardy. PS. Definition of |combine| ----------------------- > combine :: Traversable t => (Int -> a) -> t () -> t a > combine f t = evalState (Data.Traversable.mapM getValue t) 0 > where getValue _ = do i <- get > put (i+1) > return (f i) Example: < combine Just (Node (Leaf () ) () (Node (Leaf () ) () (Leaf ()))) < == (Node (Leaf (Just 0)) (Just 1) (Node (Leaf (Just 2)) (Just 3) (Leaf (Just 4)))) > data Tree a = Empty | Leaf a | Node (Tree a) a (Tree a) deriving Show > instance Traversable Tree where > traverse f Empty = pure Empty > traverse f (Leaf x) = Leaf <$> f x > traverse f (Node l k r) = Node <$> traverse f l <*> f k <*> traverse f r > instance Foldable Tree where foldMap = foldMapDefault > instance Functor Tree where fmap = fmapDefault From drcygnus at gmail.com Thu Oct 1 11:23:18 2009 From: drcygnus at gmail.com (Jonathan Daugherty) Date: Thu Oct 1 11:01:18 2009 Subject: [Haskell] Re: [Haskell-cafe] ANNOUNCE: vty-ui 0.1 In-Reply-To: References: <20090930043530.GA31155@janrain.com> Message-ID: > Am I correct in saying that the collection of widgets contains a > single widget type so far? ;-) Technically, four; vertical and horizontal boxes, a text string widget, and the List you mentioned. It only has a few types because I was just releasing early. I'm going to start using this in a project and add things as needed. > The list widget looks useful, does it handle multi-line strings (i.e. > strings with a "\n")? It currently only handles single-line strings but I'd actually like to generalize it to take a list of Widget instances (possibly with restrictions). -- Jonathan Daugherty From drcygnus at gmail.com Thu Oct 1 12:50:27 2009 From: drcygnus at gmail.com (Jonathan Daugherty) Date: Thu Oct 1 12:28:23 2009 Subject: [Haskell] Re: [Haskell-cafe] ANNOUNCE: vty-ui 0.1 In-Reply-To: References: <20090930043530.GA31155@janrain.com> Message-ID: <20091001165024.GA20704@janrain.com> # Nice. This sure beats how I've been doing it in the past. Out of # curiousity, can you talk about what you're doing with it? Yeah, I'd like to use this to write an administration tool for my "dbmigrations" package. I started doing it in hscurses and decided I needed to be able to live with the code (and the process of writing it), so now I'm off in the weeds working on a UI library. :) On the way to work this morning I started working on a Scrollable class to generalize the List's scrolling capabilities and support scrolling of any widget rendered in constrained space. We'll see how that goes.. -- Jonathan Daugherty From byorgey at seas.upenn.edu Thu Oct 1 15:44:04 2009 From: byorgey at seas.upenn.edu (Brent Yorgey) Date: Thu Oct 1 15:21:58 2009 Subject: [Haskell] Re: [Haskell-cafe] New TMR editor In-Reply-To: References: Message-ID: <20091001194404.GA15114@seas.upenn.edu> On Thu, Oct 01, 2009 at 04:33:43PM +0200, Wouter Swierstra wrote: > Dear all, > > After several years at the helm, I've decided to step down as editor of the > Monad.Reader. > > I am happy to announce that Brent Yorgey will take over my role as editor. > I'd like to take this opportunity to thank Brent for helping to keep the > Monad.Reader alive. I'm sure he'll do a fantastic job. > > Finally, I'd like to thank all the people who have contributed to the > Monad.Reader over the last few years ? you guys have made this > publication, and my job as an editor, so much fun. And let me be the first to thank Wouter for the outstanding job he's done as editor! I think he deserves much thanks for consistently putting together such a high-quality publication. I look forward to continuing the tradition of excellence -- and I hope YOU, the author of an upcoming Monad.Reader article, do too! I'll be sending out a call for copy for the next issue soon. -Brent From jfredett at gmail.com Thu Oct 1 15:48:11 2009 From: jfredett at gmail.com (Joe Fredette) Date: Thu Oct 1 15:26:07 2009 Subject: [Haskell] Re: [Haskell-cafe] New TMR editor In-Reply-To: <20091001194404.GA15114@seas.upenn.edu> References: <20091001194404.GA15114@seas.upenn.edu> Message-ID: Ah-- so _that's_ why you stopped doing HWN. Moving on to Greener Pastures... :) Congrats Brent! On Oct 1, 2009, at 3:44 PM, Brent Yorgey wrote: > On Thu, Oct 01, 2009 at 04:33:43PM +0200, Wouter Swierstra wrote: >> Dear all, >> >> After several years at the helm, I've decided to step down as >> editor of the >> Monad.Reader. >> >> I am happy to announce that Brent Yorgey will take over my role as >> editor. >> I'd like to take this opportunity to thank Brent for helping to >> keep the >> Monad.Reader alive. I'm sure he'll do a fantastic job. >> >> Finally, I'd like to thank all the people who have contributed to the >> Monad.Reader over the last few years ? you guys have made this >> publication, and my job as an editor, so much fun. > > And let me be the first to thank Wouter for the outstanding job he's > done as editor! I think he deserves much thanks for consistently > putting together such a high-quality publication. > > I look forward to continuing the tradition of excellence -- and I hope > YOU, the author of an upcoming Monad.Reader article, do too! I'll be > sending out a call for copy for the next issue soon. > > -Brent > _______________________________________________ > Haskell-Cafe mailing list > Haskell-Cafe@haskell.org > http://www.haskell.org/mailman/listinfo/haskell-cafe From gwern0 at gmail.com Thu Oct 1 15:53:36 2009 From: gwern0 at gmail.com (Gwern Branwen) Date: Thu Oct 1 15:31:32 2009 Subject: [Haskell] Re: [Haskell-cafe] New TMR editor In-Reply-To: References: <20091001194404.GA15114@seas.upenn.edu> Message-ID: On Thu, Oct 1, 2009 at 3:48 PM, Joe Fredette wrote: > Ah-- so _that's_ why you stopped doing HWN. Moving on to Greener Pastures... At least, less-frequently-released pastures! -- gwern From ivan.miljenovic at gmail.com Fri Oct 2 08:20:56 2009 From: ivan.miljenovic at gmail.com (Ivan Lazar Miljenovic) Date: Fri Oct 2 07:58:57 2009 Subject: [Haskell] ANNOUNCE: SourceGraph 0.5.2.0 Message-ID: <87ab0akmvr.fsf@gmail.com> Yes, this is yet another SourceGraph announcement, this time for version 0.5.2.0 [1]. [1] http://hackage.haskell.org/package/SourceGraph-0.5.2.0 The changes in this release are as follows: * Shift overall analysis to the top and per-module analysis to the end, as suggested by Duncan Coutts. * Graph drawing fixups: instances are now drawn correctly, and the module graph now has modules located in the correct directory. * Improve some graph drawing aspects (node margins, colours for module graphs, etc.). -- Ivan Lazar Miljenovic Ivan.Miljenovic@gmail.com IvanMiljenovic.wordpress.com From blume at tti-c.org Fri Oct 2 15:09:23 2009 From: blume at tti-c.org (Matthias Blume) Date: Fri Oct 2 14:47:11 2009 Subject: [Haskell] *** FLOPS 2010: Last Call for Papers *** Message-ID: <15FFAD17-C253-4FBA-AEEA-8329986F41CF@tti-c.org> ---------------------------------------------------------------------------- LAST CALL FOR PAPERS Tenth International Symposium on Functional and Logic Programming (FLOPS 2010) April 19-21, 2010 Sendai, Japan http://www.kb.ecei.tohoku.ac.jp/flops2010/ Submission deadline: October 16, 2009 FLOPS is a forum for research on all issues concerning declarative programming, including functional programming and logic programming, and aims to promote cross-fertilization and integration between the two paradigms. Previous FLOPS meetings were held in Fuji Susono (1995), Shonan Village (1996), Kyoto (1998), Tsukuba (1999), Tokyo (2001), Aizu (2002), Nara (2004), Fuji Susono (2006), and Ise (2008). TOPICS FLOPS solicits original papers in all areas of functional and logic programming, including (but not limited to): Declarative Pearls: new and excellent declarative programs with illustrative applications. Language issues: language design and constructs, programming methodology, integration of paradigms, interfacing with other languages, type systems, constraints, concurrency and distributed computing. Foundations: logic and semantics, rewrite systems and narrowing, type theory, proof systems. Implementation issues: compilation techniques, memory management, program analysis and transformation, partial evaluation, parallelism. Applications: case studies, real-world applications, graphical user interfaces, Internet applications, XML, databases, formal methods and model checking. The proceedings will be published as an LNCS volume. The proceedings of the previous meeting (FLOPS 2008) were published as LNCS 4989. INVITED SPEAKERS TBD PC CO-CHAIRS Matthias Blume (Google, Chicago, USA) German Vidal (Technical University of Valencia, Spain) CONFERENCE CHAIR Naoki Kobayashi (Tohoku University, Sendai, Japan) PC MEMBERS Nick Benton (Microsoft Research, Cambridge, UK) Manuel Chakravarty (University of New South Wales, Australia) Michael Codish (Ben-Gurion University of the Negev, Israel) Bart Demoen (Katholieke Universiteit Leuven, Belgium) Agostino Dovier (University of Udine, Italy) John P. Gallagher (Roskilde University, Denmark) Maria Garcia de la Banda (Monash University, Australia) Michael Hanus (University of Kiel, Germany) Atsushi Igarashi (Kyoto University, Japan) Patricia Johann (Rutgers University, USA) Shin-ya Katsumata (Kyoto University, Japan) Michael Leuschel (University of Dusseldorf, Germany) Francisco Lopez-Fraguas (Complutense University of Madrid, Spain) Paqui Lucio (University of the Basque Country, Spain) Yasuhiko Minamide (University of Tsukuba, Japan) Frank Pfenning (Carnegie Mellon University, USA) Francois Pottier (INRIA, France) Tom Schrijvers (Katholieke Universiteit Leuven, Belgium) Chung-chieh "Ken" Shan (Rutgers University, USA) Zhong Shao (Yale University, USA) Jan-Georg Smaus (University of Freiburg, Germany) Nobuko Yoshida (Imperial College London, UK) LOCAL CHAIR Eijiro Sumii (Tohoku University, Sendai, Japan) SUBMISSION Submissions must be unpublished and not submitted for publication elsewhere. Work that already appeared in unpublished or informally published workshops proceedings may be submitted. Submissions should fall into one of the following categories: Regular research papers: they should describe new results and will be judged on originality, correctness, and significance. System descriptions: they should contain a link to a working system and will be judged on originality, usefulness, and design. All submissions must be written in English and can be up to 15 proceedings pages long. Authors are strongly encouraged to use LaTeX2e and the Springer llncs class file, available at http://www.springer.de/comp/lncs/authors.html Regular research papers should be supported by proofs and/or experimental results. In case of lack of space, this supporting information should be made accessible otherwise (e.g., a link to a web page, or an appendix). Papers should be submitted electronically at http://www.easychair.org/conferences/?conf=flops2010 IMPORTANT DATES Submission deadlines: - Abstract: October 16, 2009 - Paper: October 23, 2009 Author notification: December 21, 2009 Camera-ready copy: January 24, 2010 Conference: April 19-21, 2010 PLACE Sendai, Japan Some previous FLOPS: FLOPS 2008, Ise: http://www.math.nagoya-u.ac.jp/~garrigue/FLOPS2008/ FLOPS 2006, Fuji Susono: http://hagi.is.s.u-tokyo.ac.jp/FLOPS2006/ FLOPS 2004, Nara FLOPS 2002, Aizu: http://www.ipl.t.u-tokyo.ac.jp/FLOPS2002/ FLOPS 2001, Tokyo: http://www.ueda.info.waseda.ac.jp/flops2001/ SPONSOR JSSST SIG-PPL IN COOPERATION with AAFS (Asian Association for Foundation of Software) ACM SIGPLAN ALP (Association for Logic Programming) ---------------------------------------------------------------------------- From jfredett at gmail.com Sat Oct 3 12:46:33 2009 From: jfredett at gmail.com (Joe Fredette) Date: Sat Oct 3 12:24:21 2009 Subject: [Haskell] Haskell Weekly News Message-ID: <4ac77fe9.9753f10a.4fbd.13a4@mx.google.com> --------------------------------------------------------------------------- Haskell Weekly News http://sequence.complete.org/hwn/20091003 Issue 134 - October 03, 2009 --------------------------------------------------------------------------- Welcome to issue 134 of HWN, a newsletter covering developments in the [1]Haskell community. I have a nasty sinus infection this week, so we're somewhat light on content. Lots of good discussion about DSL related stuff this week. Bryan O'Sullivan also release 'Criterion' this week, a new benchmarking library that Don Stewart described (on reddit) as 'awesome and game changing.' A new TMR editor -- someone familiar -- was announced. Also, there was some talk about homework policies on the mailinglists and in the irc channels. There is a [2]page on the Haskell wiki about this, but to sum it up in a maxim, remember, 'Help, don't do'. Until next week, the Haskell Weekly News! Announcements New TMR editor. Wouter Swierstra [3]announced that he would be stepping down from the editorship of 'The Monad Reader', with former HWN editor Brent Yorgey taking his place. Much thanks for Wouter's hard work and good luck to Brent on his new editor job! SourceGraph 0.5.{0,1,2}.0. Ivan Lazar Miljenovic [4]announced three new releases of the SourceGraph packages, this links to the latest release. json-b-0.0.4. Jason Dusek [5]announced a new version of the json-b package, which fixes defective handling of empty objects and arrays. rss2irc 0.4 released. Simon Michael [6]announced a new release of rss2irc, with many new improvements and features. vty-ui 0.1. Jonathan Daugherty [7]announced vty-ui, which is an extensible library of user interface widgets for composing and laying out Vty user interfaces. atom-0.1.1. Tom Hawkins [8]announced Atom, a Haskell DSL for designing hard real-time embedded applications. Graphalyze-0.7.0.0. Ivan Lazar Miljenovic [9]announced (in an apparent effort to take over hackage by submitting dozens of quality packages at absurdly high speed), Graphalyze, a library for using graph-theoretic techniques to analyse the relationships inherent within discrete data. Criterion. Bryan O'Sullivan [10]announced (without tacking on an 'ANN' tag, I might add, I almost missed it!) Criterion, a benchmarking library he describes [11]here. ListTree 0.1. yairchu@gmail.com [12]announced ListTree, a package for combinatorial search and pruning of trees. usb-0.1. Bas van Dijk [13]announced a library for interacting with usb modules from userspace. (Deadline extended to October 5th) APLAS 2009 Call for Posters. Kiminori Matsuzaki [14]announced a deadline extension to the call for posters for the APLAS conference. graphviz-2999.6.0.0. Ivan Lazar Miljenovic [15]announced a new version of the graphviz library, which features various new features and small changes. Discussion Testing polymorphic properties with QuickCheck. Jean-Philippe Bernardy [16]gave an excellent overview about how to use QuickCheck to test polymorphic properties. Designing a DSL? Gunther Schmidt [17]asked about different methods employed for designing a DSL. DSL and GUI Toolkits. Gunther Schmidt [18]also asked about different DSLs for working with GUIs error on "--++ bla bla bla". Hong Yang [19]asked about why '--++' wasn't being parsed in the way he thought it was. Haskell for Physicists. edgar [20]requested name suggestions for the talk he is giving about Physics and Haskell. Blog noise [21]Haskell news from the [22]blogosphere. Blog posts from people new to the Haskell community are marked with >>>, be sure to welcome them! * Sean Leather: [23]'Extensibility and type safety in formatting: the design of xformat' at the Dutch HUG. * Martijn van Steenbergen: [24]let 5 = 6. * Lee Pike: [25]Writer's unblock. * Manuel M T Chakravarty: [26]NVIDIAs next generation GPU architecture has a lot for HPC to love. * David Amos: [27]Finite geometries, part 4: Lines in PG(n,Fq). * Bryan O'Sullivan: [28]New criterion release works on Macs. * Neil Brown: [29]Poison: Concurrent Termination. * The GHC Team: [30]Heads up: what you need to know about Unicode I/O in GHC 6.12.1. * Galois, Inc: [31]Tech Talk: Roll Your Own Test Bed for Embedded Real-Time Protocols: A Haskell Experience. * Bryan O'Sullivan: [32]Criterion, a new benchmarking library for Haskell. * Tom Schrijvers: [33]Monadic Constraint Programming. * Neil Brown: [34]Growing Sort Pump. Quotes of the Week * dekudekuplex: (Unfortunately (unless intentional)) the preceding (by ksf (in the 'Quotes of the Week' section)) quote had mismatched (one too many opening) parentheses (although it was still funny (even though it could have been edited (to make the parentheses match (even though that is not an important issue)))). * pozic: I think if you want to contact dons, you have to say that you found a bug in ByteString. * Veinor: [about dibblego kicking a whole bunch of spammers] crouching dibblego, hidden op * allbery_b: [on UndecidableInstances] 'this exceeds my easy threshold, turn on wizard mode' (at which point it becomes a lot smarter but may start contemplating its navel without warning) * byorgey: a bus error? try recompiling with -fsubway, perhaps * jafet: 'Zygomorphism' sounds like a reproductive disorder About the Haskell Weekly News New editions are posted to [35]the Haskell mailing list as well as to [36]the Haskell Sequence and [37]Planet Haskell. [38]RSS is also available, and headlines appear on [39]haskell.org. To help create new editions of this newsletter, please see the information on [40]how to contribute. Send stories to jfredett . at . gmail . dot . com. The darcs repository is available at darcs get [41]http://patch-tag.com/r/jfredett/HWN2/pullrepo HWN2 . References 1. http://haskell.org/ 2. http://www.haskell.org/haskellwiki/Homework_help 3. http://article.gmane.org/gmane.comp.lang.haskell.cafe/64213 4. http://article.gmane.org/gmane.comp.lang.haskell.cafe/64259 5. http://article.gmane.org/gmane.comp.lang.haskell.cafe/64254 6. http://article.gmane.org/gmane.comp.lang.haskell.cafe/63838 7. http://article.gmane.org/gmane.comp.lang.haskell.cafe/64070 8. http://article.gmane.org/gmane.comp.lang.haskell.cafe/64035 9. http://article.gmane.org/gmane.comp.lang.haskell.cafe/63989 10. http://article.gmane.org/gmane.comp.lang.haskell.cafe/63985 11. http://www.serpentine.com/blog/2009/09/29/criterion-a-new-benchmarking-library-for-haskell/ 12. http://article.gmane.org/gmane.comp.lang.haskell.cafe/63853 13. http://article.gmane.org/gmane.comp.lang.haskell.cafe/64206 14. http://article.gmane.org/gmane.comp.lang.haskell.general/17529 15. http://article.gmane.org/gmane.comp.lang.haskell.general/17520 16. http://thread.gmane.org/gmane.comp.lang.haskell.general/17535 17. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/64267 18. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/64244 19. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/64161 20. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/64128 21. http://planet.haskell.org/ 22. http://haskell.org/haskellwiki/Blog_articles 23. http://feedproxy.google.com/~r/splonderzoek/~3/BHqNHIZFF7U/extensibility-and-type-safety-in.html 24. http://martijn.van.steenbergen.nl/journal/2009/10/02/let-5-6/ 25. http://leepike.wordpress.com/2009/09/30/writers-unblock/ 26. http://justtesting.org/post/201508784 27. http://haskellformaths.blogspot.com/2009/09/finite-geometries-part-4-lines-in-pgnfq.html 28. http://www.serpentine.com/blog/2009/09/30/new-criterion-release-works-on-macs/ 29. http://chplib.wordpress.com/2009/09/30/poison-concurrent-termination/ 30. http://ghcmutterings.wordpress.com/2009/09/30/heads-up-what-you-need-to-know-about-unicode-io-in-ghc-6-12-1/ 31. http://www.galois.com/blog/2009/09/29/pike-haskell0/ 32. http://www.serpentine.com/blog/2009/09/29/criterion-a-new-benchmarking-library-for-haskell/ 33. http://tomschrijvers.blogspot.com/2009/01/monadic-constraint-programming.html 34. http://chplib.wordpress.com/2009/09/28/growing-sort-pump/ 35. http://www.haskell.org/mailman/listinfo/haskell 36. http://sequence.complete.org/ 37. http://planet.haskell.org/ 38. http://sequence.complete.org/node/feed 39. http://haskell.org/ 40. http://haskell.org/haskellwiki/HWN 41. http://patch-tag.com/r/jfredett/HWN2/pullrepo%20HWN2 From tobias_bexelius at hotmail.com Sun Oct 4 14:32:56 2009 From: tobias_bexelius at hotmail.com (Tobias Bexelius) Date: Sun Oct 4 14:10:39 2009 Subject: [Haskell] ANNOUNCE: GPipe-1.0.0: A functional graphics API for programmable GPUs Message-ID: I'm proud to announce the first release of GPipe-1.0.0: A functional graphics API for programmable GPUs. GPipe models the entire graphics pipeline in a purely functional, immutable and typesafe way. It is built on top of the programmable pipeline (i.e. non-fixed function) of OpenGL 2.1 and uses features such as vertex buffer objects (VBO's), texture objects and GLSL shader code synthetisation to create fast graphics programs. Buffers, textures and shaders are cached internally to ensure fast framerate, and GPipe is also capable of managing multiple windows and contexts. By creating your own instances of GPipes classes, it's possible to use additional datatypes on the GPU. You'll need full OpenGL 2.1 support, including GLSL 1.20 to use GPipe. Thanks to OpenGLRaw, you may still build GPipe programs on machines lacking this support. The package, including full documentation, can be found at: http://hackage.haskell.org/package/GPipe-1.0.0 Of course, you may also install it with: cabal install gpipe Cheers! Tobias Bexelius _________________________________________________________________ Hitta k?rleken nu i v?r! http://dejting.se.msn.com/channel/index.aspx?trackingid=1002952 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.haskell.org/pipermail/haskell/attachments/20091004/4b21a480/attachment.html From felipe.lessa at gmail.com Sun Oct 4 16:22:51 2009 From: felipe.lessa at gmail.com (Felipe Lessa) Date: Sun Oct 4 16:00:54 2009 Subject: [Haskell] Re: [HOpenGL] ANNOUNCE: GPipe-1.0.0: A functional graphics API for programmable GPUs In-Reply-To: References: Message-ID: <20091004202251.GA19837@kira.casa> I've read the documentation and it seems really cool, but I'm missing an example, even if not complete. Thanks! -- Felipe. From jake.mcarthur at gmail.com Sun Oct 4 18:18:00 2009 From: jake.mcarthur at gmail.com (Jake McArthur) Date: Sun Oct 4 17:55:45 2009 Subject: [Haskell] ANNOUNCE: GPipe-1.0.0: A functional graphics API for programmable GPUs In-Reply-To: References: Message-ID: <4AC91F18.5010309@gmail.com> This looks amazing! Are there any examples of using it anywhere? - Jake From jefferson.r.heard at gmail.com Sun Oct 4 18:19:25 2009 From: jefferson.r.heard at gmail.com (Jeff Heard) Date: Sun Oct 4 17:57:27 2009 Subject: [Haskell] Re: [HOpenGL] ANNOUNCE: GPipe-1.0.0: A functional graphics API for programmable GPUs In-Reply-To: <20091004202251.GA19837@kira.casa> References: <20091004202251.GA19837@kira.casa> Message-ID: <4165d3a70910041519v754dcf4w1209f44edfeaf579@mail.gmail.com> I second the request for a few examples. This looks absolutely perfect for a lot of things, but it's a different way of approaching accelerated graphics than people are used to. -- jeff On Sun, Oct 4, 2009 at 4:22 PM, Felipe Lessa wrote: > I've read the documentation and it seems really cool, but I'm > missing an example, even if not complete. > > Thanks! > > -- > Felipe. > _______________________________________________ > HOpenGL mailing list > HOpenGL@haskell.org > http://www.haskell.org/mailman/listinfo/hopengl > From jake.mcarthur at gmail.com Sun Oct 4 22:43:40 2009 From: jake.mcarthur at gmail.com (Jake McArthur) Date: Sun Oct 4 22:21:25 2009 Subject: [Haskell] Re: [HOpenGL] ANNOUNCE: GPipe-1.0.0: A functional graphics API for programmable GPUs In-Reply-To: <4165d3a70910041519v754dcf4w1209f44edfeaf579@mail.gmail.com> References: <20091004202251.GA19837@kira.casa> <4165d3a70910041519v754dcf4w1209f44edfeaf579@mail.gmail.com> Message-ID: <4AC95D5C.1050406@gmail.com> Here's a simple program I wrote once I managed to decipher the API a bit. http://hpaste.org/fastcgi/hpaste.fcgi/view?id=10451#a10451 - Jake From tobias_bexelius at hotmail.com Mon Oct 5 04:15:36 2009 From: tobias_bexelius at hotmail.com (Tobias Bexelius) Date: Mon Oct 5 03:53:17 2009 Subject: [Haskell] ANNOUNCE: GPipe-1.0.0: A functional graphics API for programmable GPUs In-Reply-To: <4AC91F18.5010309@gmail.com> References: Message-ID: I'm planning to make some examples and upload them in a week or so. Right now youre free to play around on your own =) /Tobias > Date: Sun, 4 Oct 2009 17:18:00 -0500 > From: jake.mcarthur@gmail.com > To: tobias_bexelius@hotmail.com > CC: haskell@haskell.org; hopengl@haskell.org > Subject: Re: [Haskell] ANNOUNCE: GPipe-1.0.0: A functional graphics API for programmable GPUs > > This looks amazing! Are there any examples of using it anywhere? > > - Jake _________________________________________________________________ Hitta hetaste singlarna p? MSN Dejting! http://dejting.se.msn.com/channel/index.aspx?trackingid=1002952 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.haskell.org/pipermail/haskell/attachments/20091005/9b6a5df5/attachment.html From icfp.publicity at googlemail.com Mon Oct 5 10:06:33 2009 From: icfp.publicity at googlemail.com (Wouter Swierstra) Date: Mon Oct 5 09:44:23 2009 Subject: [Haskell] ICFP videos now available Message-ID: <53ff55480910050706v4411ecdfr36b3a838c1419870@mail.gmail.com> I am happy to announce that videos of all talks at ICFP and some of the associated workshops this year have made available online: http://www.vimeo.com/user2191865/albums I'm sure you'll join me in thanking Malcolm Wallace for the time and effort he put into making this possible. Thank you Malcolm! Wouter From jake.mcarthur at gmail.com Mon Oct 5 10:12:28 2009 From: jake.mcarthur at gmail.com (Jake McArthur) Date: Mon Oct 5 09:50:04 2009 Subject: [HOpenGL] RE: [Haskell] ANNOUNCE: GPipe-1.0.0: A functional graphics API for programmable GPUs In-Reply-To: References: <4AC91F18.5010309@gmail.com> Message-ID: <4AC9FECC.1050900@gmail.com> Hugo Gomes wrote: > great... > > now, how do i use glfw with it ? :) Yeah, I was disappointed to see that the only toolkit it works with when rendering to a window is GLUT. I want to run my own event loop, dangit! - Jake From fmics2009 at dsic.upv.es Tue Oct 6 03:59:39 2009 From: fmics2009 at dsic.upv.es (FMICS 2009 workshop chair) Date: Tue Oct 6 03:37:20 2009 Subject: [Haskell] CfPart: FMICS 2009, 2-3 November 2009, Final Call Message-ID: <4ACAF8EB.6060308@dsic.upv.es> FMICS 2009 - FINAL CALL FOR PARTICIPATION Please visit: http://users.dsic.upv.es/workshops/fmics2009 ************************************************************ * 14th International Workshop on * * Formal Methods for Industrial Critical Systems * * FMICS 2009 * * * * part of the first FMweek * * November 2-3, 2009 * * Eindhoven, The Netherlands * ************************************************************ * ** NEWS ** * * * * >> Final programme * * * * >> Normal registration before October 19 * * * * >> Springer LNCS 5825 proceedings * * * ************************************************************ FMICS 2009 is the fourteenth in a series of International Workshop on Formal Methods for Industrial Critical Systems. Previous workshops of the ERCIM working group on Formal Methods for Industrial Critical Systems were held in Oxford (March 1996), Cesena (July 1997), Amsterdam (May 1998), Trento (July 1999), Berlin (April 2000), Paris (July 2001), Malaga (July 2002), Trondheim (June 2003), Linz (September 2004), Lisbon (September 2005), Bonn (August 2006), Berlin (July 2007), and L'Aquila (September 2008). The aim of the FMICS workshop series is to provide a forum for researchers who are interested in the development and application of formal methods in industry. In particular, these workshops bring together scientists and engineers who are active in the area of formal methods and are interested in exchanging their experiences in the industrial usage of these methods. These workshops also strive to promote research and development for the improvement of formal methods and tools for industrial applications. Complete and up to date information can be found at the event website http://users.dsic.upv.es/workshops/fmics2009/. FMICS 2009 is part of the 1st FMweek (Formal Methods week, http://www.win.tue.nl/fmweek/), which brings together 10 international scientific events, 6 project and working group meetings, and a variety of other activities in the area. Further information about the FMICS working group and the next FMICS workshop can be found at: http://www.inrialpes.fr/vasy/fmics. INVITED SPEAKERS ---------------- Dino Distefano Queen Mary, University of London, UK Diego Latella CNR/ISTI, Italy Thierry Lecomte ClearSy, France Ken McMillan Cadence Berkeley Labs, USA Following a tradition established over the past few years, the European Association of Software Science and Technology (EASST) will offer an award to the best FMICS paper. PROGRAM CHAIRS -------------- Maria Alpuente Technical University of Valencia, Spain Byron Cook Microsoft Research, UK WORKSHOP CHAIR -------------- Christophe Joubert Technical University of Valencia, Spain VENUE ----- The venue for FMICS 2009 is the Auditorium of Eindhoven University of Technology. The university campus lies in the centre of Eindhoven, within walking distance of conference hotels. The city itself can easily be reached via both its own airport and Schiphol (the Dutch mainport). REGISTRATION ------------ The event website provides a one-stop window where participants can register to FMICS 2009 and to any combination of FMweek events they would like to participate in, and make hotel reservation for their stay in Eindhoven. ************************************************************ * * * +============================================+ * * | | * * | ** FMweek ** | * * | | * * +============================================+ * * | FMICS | FM2009 | REFINE | * * +--------------------------------------------+ * * | PDMC | TESTCOM/FATES | * * +--------------------------------------------+ * * | FACS | CPA | FAST | FMCO | * * +--------------------------------------------+ * * | http://www.win.tue.nl/fmweek | * * +============================================+ * * * ************************************************************ From tobias_bexelius at hotmail.com Tue Oct 6 05:56:55 2009 From: tobias_bexelius at hotmail.com (Tobias Bexelius) Date: Tue Oct 6 05:34:34 2009 Subject: [HOpenGL] RE: [Haskell] ANNOUNCE: GPipe-1.0.0: A functional graphics API for programmable GPUs In-Reply-To: <4AC9FECC.1050900@gmail.com> References: <4AC91F18.5010309@gmail.com> Message-ID: Yeah, that is sad indeed. Right now, the GLUT window concept is wired in quite tightly to support multiple windows (textures are tagged with Window objects because they need to be transferred via RAM if used in new windows, and so on). I'll try to adress this issue in a later version... > Date: Mon, 5 Oct 2009 09:12:28 -0500 > From: jake.mcarthur@gmail.com > To: mr.hugo.gomes@gmail.com > CC: tobias_bexelius@hotmail.com; hopengl@haskell.org; haskell@haskell.org > Subject: Re: [HOpenGL] RE: [Haskell] ANNOUNCE: GPipe-1.0.0: A functional graphics API for programmable GPUs > > Hugo Gomes wrote: > > great... > > > > now, how do i use glfw with it ? :) > > Yeah, I was disappointed to see that the only toolkit it works with when > rendering to a window is GLUT. I want to run my own event loop, dangit! > > - Jake _________________________________________________________________ Hitta hetaste singlarna p? MSN Dejting! http://dejting.se.msn.com/channel/index.aspx?trackingid=1002952 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.haskell.org/pipermail/haskell/attachments/20091006/787ff3b3/attachment.html From jake.mcarthur at gmail.com Tue Oct 6 09:58:35 2009 From: jake.mcarthur at gmail.com (Jake McArthur) Date: Tue Oct 6 09:36:17 2009 Subject: [HOpenGL] RE: [Haskell] ANNOUNCE: GPipe-1.0.0: A functional graphics API for programmable GPUs In-Reply-To: References: <4AC91F18.5010309@gmail.com> Message-ID: <4ACB4D0B.70205@gmail.com> Speaking of texture, I tried rendering to a texture and sampling it and got an error: Main: user error (unknown OpenGL extension entry glUniform1uiv, check for OpenGL 3.1) I'm on Linux 2.6.30 with Mesa 7.5.1. Of course Mesa doesn't have support for OpenGL 3.1 yet, but your description of GPipe says it only needs OpenGL 2.1. Is this a GPipe bug or something else? - Jake From ivan.miljenovic at gmail.com Tue Oct 6 11:50:02 2009 From: ivan.miljenovic at gmail.com (Ivan Lazar Miljenovic) Date: Tue Oct 6 11:27:51 2009 Subject: [Haskell] ANNOUNCE: Graphalyze-0.8.0.0 and SourceGraph-0.5.5.0 Message-ID: <87my44wmhh.fsf@gmail.com> To keep Joe Fredette happy [1] this time, I've combined these two announcements into one. [1] http://sequence.complete.org/hwn/20091003 I'm pleased to announce the latest versions of Graphalyze [2] and SourceGraph [3]. The only change to Graphalyze has been the addition of Legend support (which necessitated a slight change in the data structures used, hence the large version bump) but SourceGraph contains more substantial changes. [2] http://hackage.haskell.org/package/Graphalyze-0.8.0.0 [3] http://hackage.haskell.org/package/SourceGraph-0.5.5.0 Changes to SourceGraph include: * A legend so that you know what all the fancy symbols, etc. actually mean. * Class instances now drawn correctly. * Better colour support. * Clean up printing of cliques, etc. I've also put some sample SourceGraph reports online at http://code.haskell.org/~ivanm/Sample_SourceGraph/SampleReports.html so that you can see what kind of results it produces. Enjoy! -- Ivan Lazar Miljenovic Ivan.Miljenovic@gmail.com IvanMiljenovic.wordpress.com From tobias_bexelius at hotmail.com Tue Oct 6 14:37:05 2009 From: tobias_bexelius at hotmail.com (Tobias Bexelius) Date: Tue Oct 6 14:14:42 2009 Subject: [Haskell] ANNOUNCE: GPipe-1.0.1: A functional graphics API for programmable GPUs In-Reply-To: <4ACB4D0B.70205@gmail.com> References: <4AC91F18.5010309@gmail.com> <4ACB4D0B.70205@gmail.com> Message-ID: I've just uploaded a new version of Gpipe that fixes these bugs: * Textures should now work on OpenGl 2.1 (required OpenGl 3.x previously). Thanks to Jake for the bug report. * Added link to GPipe homepage. Still not much there though (just Jake's example code), check back in a few days. /Tobias Bexelius > Date: Tue, 6 Oct 2009 08:58:35 -0500 > From: jake.mcarthur@gmail.com > To: tobias_bexelius@hotmail.com > CC: mr.hugo.gomes@gmail.com; hopengl@haskell.org; haskell@haskell.org > Subject: Re: [HOpenGL] RE: [Haskell] ANNOUNCE: GPipe-1.0.0: A functional graphics API for programmable GPUs > > Speaking of texture, I tried rendering to a texture and sampling it and > got an error: > > Main: user error (unknown OpenGL extension entry glUniform1uiv, > check for OpenGL 3.1) > > I'm on Linux 2.6.30 with Mesa 7.5.1. Of course Mesa doesn't have support > for OpenGL 3.1 yet, but your description of GPipe says it only needs > OpenGL 2.1. Is this a GPipe bug or something else? > > - Jake _________________________________________________________________ Windows Live: G?r det enklare f?r dina v?nner att se vad du h?ller p? med p? Facebook. http://www.microsoft.com/windows/windowslive/see-it-in-action/social-network-basics.aspx?ocid=PID23461::T:WLMTAGL:ON:WL:sv-se:SI_SB_2:092009 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.haskell.org/pipermail/haskell/attachments/20091006/8a39057f/attachment.html From jfredett at gmail.com Tue Oct 6 14:43:27 2009 From: jfredett at gmail.com (Joe Fredette) Date: Tue Oct 6 14:21:12 2009 Subject: [Haskell] Re: [Haskell-cafe] ANNOUNCE: Graphalyze-0.8.0.0 and SourceGraph-0.5.5.0 In-Reply-To: <87my44wmhh.fsf@gmail.com> References: <87my44wmhh.fsf@gmail.com> Message-ID: Hehe, very cool. Keep the good work coming, Ivan. /Joe On Oct 6, 2009, at 11:50 AM, Ivan Lazar Miljenovic wrote: > > To keep Joe Fredette happy [1] this time, I've combined these two > announcements into one. > > [1] http://sequence.complete.org/hwn/20091003 > > I'm pleased to announce the latest versions of Graphalyze [2] and > SourceGraph [3]. The only change to Graphalyze has been the > addition of > Legend support (which necessitated a slight change in the data > structures used, hence the large version bump) but SourceGraph > contains > more substantial changes. > > [2] http://hackage.haskell.org/package/Graphalyze-0.8.0.0 > [3] http://hackage.haskell.org/package/SourceGraph-0.5.5.0 > > Changes to SourceGraph include: > > * A legend so that you know what all the fancy symbols, etc. actually > mean. > > * Class instances now drawn correctly. > > * Better colour support. > > * Clean up printing of cliques, etc. > > I've also put some sample SourceGraph reports online at > http://code.haskell.org/~ivanm/Sample_SourceGraph/SampleReports.html > so > that you can see what kind of results it produces. > > Enjoy! > > -- > Ivan Lazar Miljenovic > Ivan.Miljenovic@gmail.com > IvanMiljenovic.wordpress.com > _______________________________________________ > Haskell-Cafe mailing list > Haskell-Cafe@haskell.org > http://www.haskell.org/mailman/listinfo/haskell-cafe From drcygnus at gmail.com Wed Oct 7 23:44:44 2009 From: drcygnus at gmail.com (Jonathan Daugherty) Date: Wed Oct 7 23:22:22 2009 Subject: [Haskell] ANNOUNCE: vty-ui 0.2 Message-ID: <20091008034443.GA4972@janrain.com> I'm happy to announce the release of vty-ui 0.2. Get it from Hackage: http://hackage.haskell.org/package/vty-ui Or get the source with darcs: http://repos.codevine.org/vty-ui This version of vty-ui is everything you hoped it would be: fewer bugs, more widget types, cleaner code, better abstractions, and more generality. If you've written any applications to use vty-ui, only a few of your type signatures will need to change. Here's a summary of changes: General * Unify HBorder and VBorder types (now called Border) * Unify HFill and VFill types (now called Fill) * Unify HBox and VBox types (now called Box) * Box layout: layout documentation, edge case bug fixes * Widget class: refactor growthPolicy into growHorizontal and growVertical * Add Graphics.Vty.Widgets.Composed for high-level widget compositions * Add Graphics.Vty.Widgets.All convenience module to export everything in the library Lists * List items may now be of any widget type! * Add resize, pageUp, pageDown, scrollBy functions and expose other list functionality * Generalize scrolling API * Add convenience API for using lists of Text widgets * Support internal identifiers for list items * Always consume scrollWindowSize lines of space even if the list is smaller New widgets * WrappedText: automatically wraps text in available space; try resizing the demo. * Borders module: one-row/one-column ASCII borders between boxed widgets; ASCII art box container * Demo: use crazy boxed list items to show off border boxes and generic widget support in Lists! * Demo: support PageUp/PageDown to demonstrate List paging API Enjoy! -- Jonathan Daugherty From tobias_bexelius at hotmail.com Thu Oct 8 17:49:14 2009 From: tobias_bexelius at hotmail.com (Tobias Bexelius) Date: Thu Oct 8 17:26:47 2009 Subject: [Haskell] GPipe example and screenshot Message-ID: I've put a simple GPipe example (including a screenshot) on the haskellwiki now, showing off an animated spinning box. You'll find the page here: http://www.haskell.org/haskellwiki/GPipe Later on, I will add more examples, and also some kind of GPipe-tutorial. Hang in there... Cheers Tobias Bexelius _________________________________________________________________ Windows Live: G?r det enklare f?r dina v?nner att se vad du h?ller p? med p? Facebook. http://www.microsoft.com/windows/windowslive/see-it-in-action/social-network-basics.aspx?ocid=PID23461::T:WLMTAGL:ON:WL:sv-se:SI_SB_2:092009 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.haskell.org/pipermail/haskell/attachments/20091008/48dda10c/attachment.html From jake.mcarthur at gmail.com Thu Oct 8 18:53:48 2009 From: jake.mcarthur at gmail.com (Jake McArthur) Date: Thu Oct 8 18:31:18 2009 Subject: [Haskell] Re: [Haskell-cafe] GPipe example and screenshot In-Reply-To: References: Message-ID: <4ACE6D7C.8090201@gmail.com> Tobias Bexelius wrote: > I've put a simple GPipe example (including a screenshot) on the > haskellwiki now, showing off an animated spinning box. Nice to see Data.Vec.LinAlg.Transform3D! That will be a big help. I'm having fun with GPipe. Thanks for the library! - Jake From hu at nii.ac.jp Fri Oct 9 05:53:35 2009 From: hu at nii.ac.jp (Zhenjiang Hu) Date: Fri Oct 9 05:31:06 2009 Subject: [Haskell] Call For Participation: APLAS 2009 (Korea, Dec 14-16) In-Reply-To: <1C104715-7CCB-4636-98CF-A29FBC6845E7@nii.ac.jp> References: <1C104715-7CCB-4636-98CF-A29FBC6845E7@nii.ac.jp> Message-ID: <6A229551-2926-4443-972E-78D1456D9309@nii.ac.jp> ------------------------------------------------------------------------ CALL FOR PARTICIPATION The Seventh ASIAN Symposium on Programming Languages and Systems (APLAS 2009) December 14 - 16, 2009 Seoul National University, Seoul, Korea http://ropas.snu.ac.kr/aplas09/ (1) Early registration Deadline: November 12 https://ropas.snu.ac.kr/aplas09/registration/ (2) Program: http://ropas.snu.ac.kr/aplas09/program/ 3 invited talks, 2 tutorials, 21 regular papers, 8 posters (3) Colocated with ASIAN 2009 --------------------------------------------------------------------------- From jfredett at gmail.com Sat Oct 10 03:47:22 2009 From: jfredett at gmail.com (jfredett@gmail.com) Date: Sat Oct 10 03:24:48 2009 Subject: [Haskell] Haskell Weekly News: Issue 134 - October 10, 2009 Message-ID: <4ad03c0a.9753f10a.238d.3a88@mx.google.com> --------------------------------------------------------------------------- Haskell Weekly News http://sequence.complete.org/hwn/20091010 Issue 134 - October 10, 2009 --------------------------------------------------------------------------- Welcome to issue 134 of HWN, a newsletter covering developments in the [1]Haskell community. What with Don Stewart's [2]call to [3]arms to lead Haskell to conquest over (E)DSL-land, I've once again tried to highlight discussion of EDSL's this week. Fortunately, it was actually more difficult choosing what _not_ to include this week, since there was so much discussion about DSLs and Syntax extensions (a related notion, in my opinion). Also, this week Bryan O'Sullivan put his Criterion Library to good use on the `text` package, leading to [4]code which is more than ten times faster than before! With all this fantastic news, I won't hold you up any longer, Haskellers, the Haskell Weekly News! Announcements CfPart: FMICS 2009, 2-3 November 2009, Final Call. FMICS 2009 workshop chair [5]announced the final call for particpaction for FMICS 2009 ICFP videos now available. Wouter Swierstra [6]announced the availablity of videos from the International Conference on Functional Programming (ICFP) GPipe-1.0.0: A functional graphics API for programmable GPUs. Tobias Bexelius [7]announced the first release of GPie, a functional graphics API for programmable GPUs. text 0.5, a major revision of the Unicode text library. Bryan O'Sullivan [8]announced a new, major version of the text package. New API features, and huge improvments in speed, as Bryan says, 'Get it while it's fresh on Hackage, folks!' vty-ui 0.2. Jonathan Daugherty [9]announced a new version of the vty-ui package, with fewer bugs, more widgets, and cleaner code due to new more powerful abstractions. htzaar-0.0.1. Tom Hawkins [10]announced HTZAAR, a Haskell implementation of TZAAR Graphalyze-0.8.0.0 and SourceGraph-0.5.5.0. Ivan Lazar Miljenovic [11]announced To keep this editor happy, Ivan released two new packaged in one announcement. This time, he's added Legend support to Graphalyze, but also many new changes to SourceGraph, including a legend so you can see what all the symbols mean, Better color support, and much more. TxtSushi 0.4.0. Keith Sheppard [12]announced a new version of TxtSushi, a set of command line utilities for processing CSV and TSV files. Discussion Applicative do? Philippa Cowderoy [13]asked about a `do` like syntax for Applicative functors. How to add use custom preprocessor in cabal. Bernd Brassel [14]asked how to add a custom preprocessor to the build chain of a cabal file. On DSLs - one last time. Gunther Schmidt [15]summarized his impressions on al the recent discussion of DSLs What is a DSL? Oleg [16]offered some insight into different [17]properties that can be part of a single tagless framework. He also pointed to some slides and other materials such as a website [18]here and slides [19]here about DSL implementations and definitions. What is a DSL? Gunther Schmidt [20]posed the question, 'What is a DSL', and with some further questions added by yours truly, a lively discussion about the definition of a DSL ensued. Finally tagless - stuck with implementation of 'lam'. Gunther Schmidt [21]asked another question about Finally Tagless DSLs and resolving an issue with the implementation of 'lam' Blog noise [22]Haskell news from the [23]blogosphere. Blog posts from people new to the Haskell community are marked with >>>, be sure to welcome them! * Darcs: [24]darcs weekly news #43. * JP Moresmau: [25]What client for an Haskell Multi Player Game?. * Mikael Vejdemo Johansson (Syzygy-): [26][MATH198] Third lecture is up. * Bryan O'Sullivan: [27]Announcing a major revision of the Haskell text library. * Eric Kow (kowey): [28]darcs hashed-storage work merged (woo!). * David Amos: [29]Symmetries of PG(n,Fq). * The GHC Team: [30]Parallelism /= Concurrency. * >>> Nefigah: [31]Fake World Haskell. Nefigah, a recent addition to the community, has been working through RWH, and is providing some excellent examples. Though, This editor prefers the title 'Real Life Haskell' as opposed to his choice. * Tom Schrijvers: [32]Release 0.6 of Monadic Constraint Programming. * Neil Brown: [33]Concurrency Can Be Deterministic (But The Type System Doesn't Know It). * Clint Moore: [34]Curiously Parallel. * Galois, Inc: [35]Tech Talk: Constructing A Universal Domain for Reasoning About Haskell Datatypes. * Neil Brown: [36]Terminal Concurrency: The Printing Process. * Sean Leather: [37]'Upwards and downwards accumulations on trees' translated into Haskell. * Mikael Vejdemo Johansson (Syzygy-): [38][MATH 198] Second lecture. * Chris Smith: [39]View Patterns as Pattern Matching for Records. * Chris Smith: [40]Playing With Records. * FP Lunch: [41]Left Kan extensions of containers. Quotes of the Week * Baughn: Blum Blum Shub, a PRNG derived from poking around R'Lyeh. * ksf: * lambdabot locks up ksf in a Monad mmmmh it's warm and fuzzy in here. * monochrom: Don't wrap your head around Haskell. Immerse! Wrap Haskell around your head. * chak: ... In other words, FP is inevitable. * robreim: I'm in your base hacking all your lambdas * gwern: RAM is overrated, swap is where it's at ;) * idnar: [to gwern] swap to a ramdisk! ;P About the Haskell Weekly News New editions are posted to [42]the Haskell mailing list as well as to [43]the Haskell Sequence and [44]Planet Haskell. [45]RSS is also available, and headlines appear on [46]haskell.org. To help create new editions of this newsletter, please see the information on [47]how to contribute. Send stories to jfredett . at . gmail . dot . com. The darcs repository is available at darcs get [48]http://patch-tag.com/r/jfredett/HWN2/pullrepo HWN2 . References 1. http://haskell.org/ 2. http://www.haskell.org/pipermail/haskell-cafe/2009-October/067203.html 3. http://www.reddit.com/r/haskell/comments/9qk54/haskell_should_own_the_edsl_space_a_call_to_arms/ 4. http://www.serpentine.com/blog/2009/10/09/announcing-a-major-revision-of-the-haskell-text-library/ 5. http://article.gmane.org/gmane.comp.lang.haskell.general/17555 6. http://article.gmane.org/gmane.comp.lang.haskell.general/17552 7. http://article.gmane.org/gmane.comp.lang.haskell.general/17546 8. http://article.gmane.org/gmane.comp.lang.haskell.cafe/64591 9. http://article.gmane.org/gmane.comp.lang.haskell.cafe/64529 10. http://article.gmane.org/gmane.comp.lang.haskell.cafe/64516 11. http://article.gmane.org/gmane.comp.lang.haskell.cafe/64399 12. http://article.gmane.org/gmane.comp.lang.haskell.cafe/64301 13. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/64616 14. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/64558 15. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/64552 16. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/64533 17. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/ 18. http://dsl09.blogspot.com/ 19. http://dsl09.blogspot.com/2009/07/panel.html 20. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/64474 21. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/64343 22. http://planet.haskell.org/ 23. http://haskell.org/haskellwiki/Blog_articles 24. http://blog.darcs.net/2009/10/darcs-weekly-news-43.html 25. http://jpmoresmau.blogspot.com/2009/10/what-client-for-haskell-multi-player.html 26. http://blog.mikael.johanssons.org/archive/2009/10/math198-third-lecture-is-up/ 27. http://www.serpentine.com/blog/2009/10/09/announcing-a-major-revision-of-the-haskell-text-library/ 28. http://koweycode.blogspot.com/2009/10/darcs-hashed-storage-work-merged-woo.html 29. http://haskellformaths.blogspot.com/2009/10/symmetries-of-pgnfq.html 30. http://ghcmutterings.wordpress.com/2009/10/06/parallelism-concurrency/ 31. http://my.life-is-virtual.com/2009/10/07/fake-world-haskell-part-1/ 32. http://tomschrijvers.blogspot.com/2009/10/release-06-of-monadic-constraint.html 33. http://chplib.wordpress.com/2009/10/07/concurrency-can-be-deterministic/ 34. http://www.l2mlogistics.com/2009/10/curiously-parallel.html 35. http://www.galois.com/blog/2009/10/06/huffman-universal/ 36. http://chplib.wordpress.com/2009/10/06/the-printing-process/ 37. http://feedproxy.google.com/~r/splonderzoek/~3/4E8TZPDZ-aM/upwards-and-downwards-accumulations-on.html 38. http://blog.mikael.johanssons.org/archive/2009/10/math-198-second-lecture/ 39. http://cdsmith.wordpress.com/2009/10/04/view-patterns-as-pattern-matching-for-records/ 40. http://cdsmith.wordpress.com/2009/10/03/playing-with-records/ 41. http://sneezy.cs.nott.ac.uk/fplunch/weblog/?p=237 42. http://www.haskell.org/mailman/listinfo/haskell 43. http://sequence.complete.org/ 44. http://planet.haskell.org/ 45. http://sequence.complete.org/node/feed 46. http://haskell.org/ 47. http://haskell.org/haskellwiki/HWN 48. http://patch-tag.com/r/jfredett/HWN2/pullrepo%20HWN2 From tobias_bexelius at hotmail.com Sat Oct 10 10:07:57 2009 From: tobias_bexelius at hotmail.com (Tobias Bexelius) Date: Sat Oct 10 09:45:27 2009 Subject: [Haskell] ANN: Extensions to Vec uploaded (useful for GPipe programs) Message-ID: Hi, I've added two extensions to the Vec package: Vec-Transform and Vec-Boolean. These two packages are more or less essential when programming GPipe programs, but can also be useful for other applications as well. * Vec-Transform provides some 4x4 transform matrices such as perspective projection and rotation. * Vec-Boolean provides Data.Boolan instances for the Vec data types. Cheers /Tobias _________________________________________________________________ Windows Live: H?ll dina v?nner uppdaterade om vad du g?r online. http://www.microsoft.com/windows/windowslive/see-it-in-action/social-network-basics.aspx?ocid=PID23461::T:WLMTAGL:ON:WL:sv-se:SI_SB_1:092010 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.haskell.org/pipermail/haskell/attachments/20091010/82b53845/attachment.html From Sven.Panne at aedion.de Sun Oct 11 05:55:48 2009 From: Sven.Panne at aedion.de (Sven Panne) Date: Sun Oct 11 05:33:13 2009 Subject: [Haskell] ANNOUNCE: OpenGLRaw 1.1.0.1 Message-ID: <200910111155.49023.Sven.Panne@aedion.de> A new version of the OpenGLRaw package has been uploaded to Hackage. This is a bug-fix-only release, fixing the retrieval of core OpenGL API entries on Windows. This fix should have already been included in the previous 1.1.0.0 version, but it was accidentally left out (thanks to Tobias Bexelius for pointing this out). Cheers, S. From byorgey at seas.upenn.edu Sun Oct 11 14:34:54 2009 From: byorgey at seas.upenn.edu (Brent Yorgey) Date: Sun Oct 11 14:12:23 2009 Subject: [Haskell] The Monad.Reader (14) - Call for copy Message-ID: <20091011183454.GA6918@seas.upenn.edu> Call for Copy: The Monad.Reader - Issue 14 ------------------------------------------ Whether you're an established academic or have only just started learning Haskell, if you have something to say, please consider writing an article for The Monad.Reader! The submission deadline for Issue 14 will be: **Friday, January 8, 2010** The Monad.Reader ~~~~~~~~~~~~~~~~ The Monad.Reader is a electronic magazine about all things Haskell. It is less formal than journal, but somehow more enduring than a wiki-page. There have been a wide variety of articles: exciting code fragments, intriguing puzzles, book reviews, tutorials, and even half-baked research ideas. Submission Details ~~~~~~~~~~~~~~~~~~ Get in touch with me if you intend to submit something -- the sooner you let me know what you're up to, the better. Please submit articles for the next issue to me by e-mail (byorgey at cis.upenn.edu). Articles should be written according to the guidelines available from http://themonadreader.wordpress.com/contributing/ Please submit your article in PDF, together with any source files you used. The sources will be released together with the magazine under a BSD license. If you would like to submit an article, but have trouble with LaTeX please let me know and we'll sort something out. From byorgey at seas.upenn.edu Sun Oct 11 15:42:01 2009 From: byorgey at seas.upenn.edu (Brent Yorgey) Date: Sun Oct 11 15:19:28 2009 Subject: [Haskell] The Monad.Reader (14) - Call for copy In-Reply-To: <20091011183454.GA6918@seas.upenn.edu> References: <20091011183454.GA6918@seas.upenn.edu> Message-ID: <20091011194201.GA18447@seas.upenn.edu> Er, correction, obviously that should be Issue 15, not 14. The submission deadline is correct, though! =) On Sun, Oct 11, 2009 at 02:34:54PM -0400, Brent Yorgey wrote: > Call for Copy: The Monad.Reader - Issue 14 > ------------------------------------------ > > Whether you're an established academic or have only just started > learning Haskell, if you have something to say, please consider > writing an article for The Monad.Reader! The submission deadline for > Issue 14 will be: > > **Friday, January 8, 2010** > > > The Monad.Reader > ~~~~~~~~~~~~~~~~ > > The Monad.Reader is a electronic magazine about all things Haskell. > It is less formal than journal, but somehow more enduring than a > wiki-page. There have been a wide variety of articles: exciting code > fragments, intriguing puzzles, book reviews, tutorials, and even > half-baked research ideas. > > Submission Details > ~~~~~~~~~~~~~~~~~~ > > Get in touch with me if you intend to submit something -- the sooner > you let me know what you're up to, the better. > > Please submit articles for the next issue to me by e-mail (byorgey at > cis.upenn.edu). > > Articles should be written according to the guidelines available from > > http://themonadreader.wordpress.com/contributing/ > > Please submit your article in PDF, together with any source files you > used. The sources will be released together with the magazine under a > BSD license. > > If you would like to submit an article, but have trouble with LaTeX > please let me know and we'll sort something out. > > > _______________________________________________ > Haskell mailing list > Haskell@haskell.org > http://www.haskell.org/mailman/listinfo/haskell From Jean-Christophe.Filliatre at lri.fr Tue Oct 13 11:01:34 2009 From: Jean-Christophe.Filliatre at lri.fr (=?ISO-8859-1?Q?Jean-Christophe_Filli=E2tre?=) Date: Tue Oct 13 10:36:13 2009 Subject: [Haskell] Call for Participation: VSTTE 2009 Message-ID: <4AD4964E.5090906@lri.fr> ********************************************************* * * * VSTTE 2009 * * * * Workshop on Verified Software * * Theory Tools and Experiments * * (affiliated with Formal Methods Week) * * * * *** Call For Participation *** * * * * November 2, 2009 * * Eindhoven, the Netherlands * * http://vstte09.lri.fr/ * * * ********************************************************* The workshop on Verified Software: Theories, Tools, and Experiments (VSTTE 2009) will take place on November the 2nd. The focus of this workshop will be on tools, as previous VSTTE conferences in Zurich and Toronto emphasised theories and experiments. Consisting of contributed papers and invited talks, the workshop will focus on the tools behind the development of systematic methods for specifying, building, and verifying high-quality software. Program ======= 09:00-10:00 - Rajeev Joshi, NASA JPL US TBA 10:30-11:30 - Discovering Specifications for Unknown Procedures with Separation Logic Chenguang Luo, Florin Craciun, Shengchao Qin, Guanhua He and Wei-Ngan Chin. On Essential Program Annotations and Completeness of Verifying Compilers Bernhard Beckert, Thorsten Bormer and Vladimir Klebanov. 11:30-12:30 - Jim Woodcock, University of York UK TBA 13:30-14:30 - Pascal Cuoq, CEA France TBA 14:30-15:30 - SMT Solvers: New Oracles for the HOL Theorem Prover Tjark Weber. An Interval-based SAT Modulo ODE Solver for Model Checking Nonlinear Hybrid Systems Daisuke Ishii, Kazunori Ueda and Hiroshi Hosobe. 16:00-17:00 - John McDermott, Naval Research Lab US TBA Kalou Cabrera Castillos, INRIA Nancy France TBA Registration ============ Participants can register for any combination of FM2009 activities, inclusing VSTTE 2009, at http://www.win.tue.nl/fmweek/Registration.html Deadline for (normal) registration is October 19. From voigt at tcs.inf.tu-dresden.de Wed Oct 14 08:57:31 2009 From: voigt at tcs.inf.tu-dresden.de (voigt@tcs.inf.tu-dresden.de) Date: Wed Oct 14 08:34:45 2009 Subject: [Haskell] Call for Contributions - Haskell Communities and Activities Report, November 2009 edition Message-ID: Dear all, so much has happened in the "Haskell world" in the past months. Therefore, I would like to collect contributions for the 17th edition of the ================================================================ Haskell Communities & Activities Report http://www.haskell.org/communities/ Submission deadline: 1 November 2009 (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. 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 in an existing project related to Haskell that has not previously been mentioned in the HCAR, 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 six months. If you have only recently been exposed to Haskell, it might be a good idea to browse the May 2009 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! Looking forward to your contributions, Janis (current editor) FAQ: Q: What format should I write in? A: The required format is a LaTeX source file, adhering to the template that is available at: http://haskell.org/communities/11-2009/template.tex There is also a LaTeX style file at http://haskell.org/communities/11-2009/hcar.sty that you can use to preview your entry. If you do not know LaTeX, then use plain text. If you modify an old entry that you have written for an earlier edition of the report, you should already have receive your old entry as a template (provided I have your valid email address). Please modify that template, rather than using your own version of the old entry as a template. Q: Can I include images? A: Yes, you are even encouraged to do so. Please use .jpg format, then. Q: How much should I write? A: Authors are asked to limit entries to about one column of text. This corresponds to approximately one page, or 40 lines of text, with the above style and template. A general introduction is helpful. Apart from that, you should focus on recent or upcoming developments. Pointers to online content can be given for more comprehensive or ``historic'' overviews of a project. Images do not count towards the length limit, so you may want to use this opportunity to pep entries up. There is no minimum length of an entry! The report aims at being as complete as possible, so please consider writing an entry, even if it is only a few lines long. 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 about 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 we do not 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: If I do not update my entry, but want to keep it in the report, what should I do? A: Tell the editor that there are no changes. The old entry will be reused in this case, but it might be dropped if it is older than a year, to give more room and more attention to projects that change a lot. Do not resend complete entries if you have not changed them. From vandijk.roel at gmail.com Thu Oct 15 15:53:59 2009 From: vandijk.roel at gmail.com (Roel van Dijk) Date: Thu Oct 15 15:31:12 2009 Subject: [Haskell] ANN: Reverse Dependencies in Hackage (demo) Message-ID: Hello, I have implemented reverse dependencies in Hackage. You can play with the demo here: http://bifunctor.homelinux.net/~roel/hackage I already send a message to Haskell-Cafe, but I made a few changes and would like some feedback. You can sort the tables of reverse dependencies by clicking on the column headers. Large tables (base or the total overview) might take some time. Sorting is done client-side with a bit of JavaScript. I added a link to an overview of the reverse dependencies of every package in hackage. It is sorted by the total number of rev. deps by default, so the most dependent-on packages (within hackage) are at the top. In the future such a list might be expanded with other information, like the download count. Things I would like feedback on: - Rev. deps overview for all packages; is it useful? - If you look at the reverse dependencies for a package like digest you'll see a list of packages that depend on digest. Next to the names of the packages that depend on digest are their respective reverse dependencies. The idea is that you can see which are the most "important" (for some value of important) packages that depend on digest. Is that useful? - Is this the best way to present the information? Currently I am working on a patch for the new hackage-server. Regards, Roel From johan.tibell at gmail.com Thu Oct 15 16:22:57 2009 From: johan.tibell at gmail.com (Johan Tibell) Date: Thu Oct 15 16:01:28 2009 Subject: [Haskell] Re: [Haskell-cafe] ANN: Reverse Dependencies in Hackage (demo) In-Reply-To: References: Message-ID: <90889fe70910151322w5de9f7fep67c88221adb8ad13@mail.gmail.com> Hi, This is really neat. 2009/10/15 Roel van Dijk : > Things I would like feedback on: > - Rev. deps overview for all packages; is it useful? Yes. > - If you look at the reverse dependencies for a package like digest > you'll see a list of packages that depend on digest. Next to the names > of the packages that depend on digest are their respective reverse > dependencies. The idea is that you can see which are the most > "important" (for some value of important) packages that depend on > digest. Is that useful? Yes, I think so. > - Is this the best way to present the information? Are the packages with all zeroes in the columns still reverse dependencies (that don't have any dependencies in turn)? -- Johan From vandijk.roel at gmail.com Thu Oct 15 16:29:13 2009 From: vandijk.roel at gmail.com (Roel van Dijk) Date: Thu Oct 15 16:06:25 2009 Subject: [Haskell] Re: [Haskell-cafe] ANN: Reverse Dependencies in Hackage (demo) In-Reply-To: <90889fe70910151322w5de9f7fep67c88221adb8ad13@mail.gmail.com> References: <90889fe70910151322w5de9f7fep67c88221adb8ad13@mail.gmail.com> Message-ID: 2009/10/15 Johan Tibell : >> - Is this the best way to present the information? > > Are the packages with all zeroes in the columns still reverse > dependencies (that don't have any dependencies in turn)? Yes. They are reverse dependencies which have no reverse dependencies of their own. From pirelo at googlemail.com Fri Oct 16 04:59:15 2009 From: pirelo at googlemail.com (Pablo Nogueira) Date: Fri Oct 16 04:36:28 2009 Subject: [Haskell] ANN: WFLP 2010 Call for papers Message-ID: [Apologies for multiple receptions of this message] ******************************************************************** Preliminary Call For Papers 19th International Workshop on Functional and (Constraint) Logic Programming Madrid, Spain, January 17, 2010 http://babel.ls.fi.upm.es/events/wflp2010/ ********* colocated with Principles of Programming Languages POPL 2010 http://www.cse.psu.edu/popl/10/ ******************************************************************** IMPORTANT DATES Abstract Submission: November 9, 2009 Full Paper Submission: November 15, 2009 Acceptance Notification: December 15, 2009 Preliminary Proceedings: January 5, 2010 Workshop: January 17, 2010 SCOPE The aim of the Workshop on Functional and (Constraint) Logic Programming is to bring together researchers interested in functional programming and (constraint) logic programming with special emphasis on the integration of both paradigms and of other declarative programming extensions. It promotes the cross-fertilizing exchange of ideas and experiences among researchers and students from the different communities interested in the foundations, applications, and combinations of high-level declarative programming languages and related areas. The previous WFLP editions are: WFLP 2009 (Brasilia, Brazil), WFLP 2008 (Siena, Italy), WFLP 2007 (Paris, France), WFLP 2006 (Madrid, Spain), WCFLP 2005 (Tallinn, Estonia), WFLP 2004 (Aachen, Germany), WFLP 2003 (Valencia, Spain), WFLP 2002 (Grado, Italy), WFLP 2001 (Kiel, Germany), WFLP 2000 (Benicassim, Spain), WFLP'99 (Grenoble, France), WFLP'98 (Bad Honnef, Germany), WFLP'97 (Schwarzenberg, Germany), WFLP'96 (Marburg, Germany), WFLP'95 (Schwarzenberg, Germany), WFLP'94 (Schwarzenberg, Germany), WFLP'93 (Rattenberg, Germany), and WFLP'92 (Karlsruhe, Germany). LOCATION WFLP 2010 will be held on January 17, 2010 in Madrid, Spain, colocated with the 37th ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages (POPL 2010). WFLP 2010 solicits papers in all areas of functional and (constraint) logic programming, including but not limited to: * Foundations: formal semantics, logic variables, binding and abstract syntax, rewriting and narrowing, unification, constraint solving, dynamics, type theory, meta-theory, effects, etc. * Language Design: security, services, modules, type systems, multi-paradigm languages, concurrency and distribution, objects, libraries, generic programming, interoperability, etc. * Implementation: abstract machines, parallelism, compile-time and run-time optimizations, foreign-language interfaces, memory management, multi-threading, exploiting parallel hardware, etc. * Transformation and Analysis: abstract interpretation, specialization, partial evaluation, program transformation, program calculation, program proof, meta-programming, generative programming, etc. * Software Development: algorithms, data structures, design patterns, components and composition, specification, proof assistants, verification and validation, model checking, debugging, testing, profiling, tracing, etc. * Paradigm Integration: integration of declarative programming with other paradigms or features such as imperative, object-oriented, aspect-oriented, concurrent, real-time programming, event-driven architectures, etc. * Applications: education, industry, commercial uses, domain-specific languages, visual/graphical user interfaces, embedded systems, WWW applications, XML processing, artificial intelligence, knowledge representation and machine learning, deductive databases, advanced programming environments and tools, etc. SUBMISSIONS and PROCEEDINGS Authors are invited to submit papers presenting original unpublished work. Papers must be at most 15 pages long. Exceptionally, authors may surpass the page limit by providing well-marked appendices intended as reviewing aids. Appendices will not appear in the final publication. Submission categories include regular research papers, system descriptions, and short papers describing on-going work (at most 8 pages). Submissions must be formatted in Lecture Notes in Computer Science (LNCS) style. This requirement needs not apply to appendices. Papers should be submitted in pdf or postscript format electronically via the web-based submission site http://www.easychair.org/conferences/?conf=wflp2010 Preliminary proceedings will be available at the workshop. Selected authors will be invited to submit a full version of their papers after the workshop. Contributions accepted for the post-workshop proceedings have usually appeared in journals -- those of the 2009 edition have been published in LNCS, previous editions in ENTCS, etc. PROGRAMME CHAIR Julio Marino (Universidad Politecnica de Madrid, Spain) PROGRAMME COMMITTEE Maria Alpuente (Universidad Politecnica de Valencia, Spain) Sergio Antoy (Portland State University, USA) Rachid Echahed (CNRS-IMAG, France) Santiago Escobar (Universidad Politecnica de Valencia, Spain) Moreno Falaschi (Universita di Siena, Italy) Murdoch Gabbay (Heriot-Watt University, UK) Maria Garcia de la Banda (Monash University, Australia) Victor Gulias (Lambdastream SL, Spain) Michael Hanus (CAU Kiel, Germany) Herbert Kuchen (Univ. of Muenster, Germany) Francisco Lopez-Fraguas (Universidad Complutense de Madrid, Spain) James Lipton (Wesleyan University, USA) Mircea Marin (University of Tsukuba, Japan) Juan Jose Moreno-Navarro (Ministry of Science & Innovation, Spain) Brigitte Pientka (McGill University, Canada) -------------- next part -------------- [Apologies for multiple receptions of this message] ******************************************************************** Preliminary Call For Papers 19th International Workshop on Functional and (Constraint) Logic Programming Madrid, Spain, January 17, 2010 http://babel.ls.fi.upm.es/events/wflp2010/ ********* colocated with Principles of Programming Languages POPL 2010 http://www.cse.psu.edu/popl/10/ ******************************************************************** IMPORTANT DATES Abstract Submission: November 9, 2009 Full Paper Submission: November 15, 2009 Acceptance Notification: December 15, 2009 Preliminary Proceedings: January 5, 2010 Workshop: January 17, 2010 SCOPE The aim of the Workshop on Functional and (Constraint) Logic Programming is to bring together researchers interested in functional programming and (constraint) logic programming with special emphasis on the integration of both paradigms and of other declarative programming extensions. It promotes the cross-fertilizing exchange of ideas and experiences among researchers and students from the different communities interested in the foundations, applications, and combinations of high-level declarative programming languages and related areas. The previous WFLP editions are: WFLP 2009 (Brasilia, Brazil), WFLP 2008 (Siena, Italy), WFLP 2007 (Paris, France), WFLP 2006 (Madrid, Spain), WCFLP 2005 (Tallinn, Estonia), WFLP 2004 (Aachen, Germany), WFLP 2003 (Valencia, Spain), WFLP 2002 (Grado, Italy), WFLP 2001 (Kiel, Germany), WFLP 2000 (Benicassim, Spain), WFLP'99 (Grenoble, France), WFLP'98 (Bad Honnef, Germany), WFLP'97 (Schwarzenberg, Germany), WFLP'96 (Marburg, Germany), WFLP'95 (Schwarzenberg, Germany), WFLP'94 (Schwarzenberg, Germany), WFLP'93 (Rattenberg, Germany), and WFLP'92 (Karlsruhe, Germany). LOCATION WFLP 2010 will be held on January 17, 2010 in Madrid, Spain, colocated with the 37th ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages (POPL 2010). WFLP 2010 solicits papers in all areas of functional and (constraint) logic programming, including but not limited to: * Foundations: formal semantics, logic variables, binding and abstract syntax, rewriting and narrowing, unification, constraint solving, dynamics, type theory, meta-theory, effects, etc. * Language Design: security, services, modules, type systems, multi-paradigm languages, concurrency and distribution, objects, libraries, generic programming, interoperability, etc. * Implementation: abstract machines, parallelism, compile-time and run-time optimizations, foreign-language interfaces, memory management, multi-threading, exploiting parallel hardware, etc. * Transformation and Analysis: abstract interpretation, specialization, partial evaluation, program transformation, program calculation, program proof, meta-programming, generative programming, etc. * Software Development: algorithms, data structures, design patterns, components and composition, specification, proof assistants, verification and validation, model checking, debugging, testing, profiling, tracing, etc. * Paradigm Integration: integration of declarative programming with other paradigms or features such as imperative, object-oriented, aspect-oriented, concurrent, real-time programming, event-driven architectures, etc. * Applications: education, industry, commercial uses, domain-specific languages, visual/graphical user interfaces, embedded systems, WWW applications, XML processing, artificial intelligence, knowledge representation and machine learning, deductive databases, advanced programming environments and tools, etc. SUBMISSIONS and PROCEEDINGS Authors are invited to submit papers presenting original unpublished work. Papers must be at most 15 pages long. Exceptionally, authors may surpass the page limit by providing well-marked appendices intended as reviewing aids. Appendices will not appear in the final publication. Submission categories include regular research papers, system descriptions, and short papers describing on-going work (at most 8 pages). Submissions must be formatted in Lecture Notes in Computer Science (LNCS) style. This requirement needs not apply to appendices. Papers should be submitted in pdf or postscript format electronically via the web-based submission site http://www.easychair.org/conferences/?conf=wflp2010 Preliminary proceedings will be available at the workshop. Selected authors will be invited to submit a full version of their papers after the workshop. Contributions accepted for the post-workshop proceedings have usually appeared in journals -- those of the 2009 edition have been published in LNCS, previous editions in ENTCS, etc. PROGRAMME CHAIR Julio Marino (Universidad Politecnica de Madrid, Spain) PROGRAMME COMMITTEE Maria Alpuente (Universidad Politecnica de Valencia, Spain) Sergio Antoy (Portland State University, USA) Rachid Echahed (CNRS-IMAG, France) Santiago Escobar (Universidad Politecnica de Valencia, Spain) Moreno Falaschi (Universita di Siena, Italy) Murdoch Gabbay (Heriot-Watt University, UK) Maria Garcia de la Banda (Monash University, Australia) Victor Gulias (Lambdastream SL, Spain) Michael Hanus (CAU Kiel, Germany) Herbert Kuchen (Univ. of Muenster, Germany) Francisco Lopez-Fraguas (Universidad Complutense de Madrid, Spain) James Lipton (Wesleyan University, USA) Mircea Marin (University of Tsukuba, Japan) Juan Jose Moreno-Navarro (Ministry of Science & Innovation, Spain) Brigitte Pientka (McGill University, Canada) From johan.tibell at gmail.com Fri Oct 16 09:06:02 2009 From: johan.tibell at gmail.com (Johan Tibell) Date: Fri Oct 16 08:43:35 2009 Subject: [Haskell] ANN: Haskell Hackathon in Zurich, Switzerland Message-ID: <90889fe70910160606u3630210dr8c90a9da281e1c7a@mail.gmail.com> Hi all! We are in the early stages of planning a Haskell hackathon/get together, ZuriHac, to be held this March at the Google office, in Zurich, Switzerland. Right now we're looking at four possible dates (Friday-Sunday): March 5-7, March 12-14, March 19-21, or March 26-28. If you might be interested in attending, please add your name on the wiki page: http://haskell.org/haskellwiki/ZuriHac#Possible_Attendees If you don't have an account on the wiki feel free to just respond to this email. If there are any dates that absolutely don't work for you then please note them on the wiki. I'll come back with a finalized date and more details soon. Hope to see you in Zurich! Johan Tibell (tibbe) From agocorona at gmail.com Fri Oct 16 18:16:17 2009 From: agocorona at gmail.com (Alberto G. Corona ) Date: Fri Oct 16 17:53:32 2009 Subject: [Haskell] ANNOUNCE IDynamic-0.1 Message-ID: IDynamic is variant of Data.Dynamic that can be indexed, serialized., stored, transmitted trough communications etc. So it can be used in abstract data containers, persistence, communications etc. http://hackage.haskell.org/package/IDynamic I Just uploaded it, so the documentation has not been created by Hackage. However I uincluded an example in the pachage. {-# OPTIONS -XTypeSynonymInstances #-} module Main where import Data.IResource import Data.IDynamic import Data.Typeable instance IResource Int where keyResource x= "I" serialize = show deserialize = read defPath _= "saved/" instance IResource String where keyResource x= take 5 x serialize = show deserialize = read defPath _= "saved/" main= do putStrLn "see the code to know the meaning of he results" registerType :: IO Int -- register both datatypes (Int, and String) registerType :: IO String let x= 1 :: Int let list= [IDynamic x, IDynamic "hello, how are you"] --typical Dynamic usage let assoc= zip (map keyResource list) list print $ lookup (keyResource (5 ::Int)) assoc -- lookup a IDynamic object from a container and show it mapM writeResource list mds ? readResource $ IDynamic "hello" -- save both objects case mds of Nothing ? error "must have been Just!" --why? Just ds ? do putStrLn $ serialize ds -- serialize the dynamic object and print it let str= fromIDyn ds :: String -- casting putStrLn str -- print the string read let y= fromIDyn ds :: Int -- casting error print y -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.haskell.org/pipermail/haskell/attachments/20091016/8715943e/attachment-0001.html From jfredett at gmail.com Sat Oct 17 00:53:21 2009 From: jfredett at gmail.com (jfredett@gmail.com) Date: Sat Oct 17 00:30:31 2009 Subject: [Haskell] Haskell Weekly News: Issue 136 - October 17, 2009 Message-ID: <4ad94dc1.9553f10a.598b.ffff881d@mx.google.com> --------------------------------------------------------------------------- Haskell Weekly News http://sequence.complete.org/hwn/20091017 Issue 136 - October 17, 2009 --------------------------------------------------------------------------- Welcome to issue 136 of HWN, a newsletter covering developments in the [1]Haskell community. Over the last week, fpisfun from reddit announced a [2]new subreddit for simple, direct applications of Haskell to common problems which normally might be solved by a perl script or bit of bash. There are a number of examples already there, and the numbers keep growing. It's not just command-line utilities either, there is also [3]this post on calculating the bend needed for a bay window curtainrod. There is plenty of great material if you're new to Haskell and looking for some basic examples of different simple projects, examples of using monads and functors appropriately, or just want to see some 'real' programs in Haskell, it's worth a look! Also, a small correction, due to some issues with the tools, unicode characters get replaced with their ASCII 'equivalents' so that an 'e' with an umlaut becomes an 'e' character. Thanks to Wolfram Kahl for pointing out that this change is not as innocent as I thought, apologies thusly to Guenther Schmidt (I'm told thats a better approximation of the correct spelling) for the error, I apologize in advance for any other similar errors. I'm working on improving the unicode support in the tools, but it's a nasty bug to catch. This was a long editorial, so I won't take any more of your time, Haskellers, the Haskell Weekly News! Announcements Call for Contributions - Haskell Communities and Activities Report, November 2009 edition. voigt [4]called for contributions to the November 2009 issue of the Haskell Communities and Activities Report. See post for details. Call for Participation: VSTTE 2009. Jean-Christophe Filliatre [5]announced a call for participation for the VSTTE Workshop. WFLP 2010 Call for papers. Pablo Nogueira [6]announced a call for papers for the 2010 WFLP. BAHUG Next meeting: October 21st at MIT (32G-882). Ravi Nanavati [7]announced the next meeting of the Boston Area Haskell User's Group. Which will be in the CSAIL Reading Room at MIT. This editor hopes to actually make it to this one, so maybe I'll see you there! fp-southwales, the South Wales Functional Programming User Group. Andy Gimblett [8]announced the formation of fp-southwales, a user group for anybody interested in functional programming in the area of south Wales, UK. The Monad.Reader (14) - Call for copy. Brent Yorgey [9]announced the call for copy for the next issue of `The Monad.Reader`, Issue #14 Extensions to Vec uploaded (useful for GPipe programs). Tobias Bexelius [10]announced two extensions to the Vec package: Vec-Transform and Vec-Boolean. Vec-Transform provides some 4x4 transform matrices such as perspective projection and rotation. Vec-Boolean provides Data.Boolan instances for the Vec data types. Bindings to FFMpeg library. Vasyl Pasternak [11]announced the next release of the hs-ffmpeg library. Downloadable from Hackage along with the ffmpeg-tutorials, which show capabilities of this library. The installation process is a bit tricky so Vasyl put up a [12]blog post which describes the installation process. Haskell Hackathon in Zurich, Switzerland. Johan Tibell [13]announced a Hackathon in Zurich, to be held in March in the Google office. No concrete date has been decided, but if your interested, make sure to add your name [14]here. Reverse Dependencies in Hackage (demo). Roel van Dijk [15]announced his patch to add reverse-dependencies to Hackage, see the linked post for information on where to see an example version of hackage. Discussion Relational Algebra. Guenther Schmidt [16]asked about whether or not a EDSL for relational algebra in Haskell. GHC devs. Andrew Coppin [17]asked about how many GHC Developers there are, and was somewhat surprised with the answer. Fuzzy Logic / Linguistic Variables. Neal Alexander [18]demonstrated an implementation of fuzzy logic taken from the book: 'Programming Game AI by Example' by Mat Buckland. In the book, the code was in C++, rewriting it in Haskell made for much more succint, readable code. Graph Library Using Associated Types. Lajos Nagy [19]asked about using Associated types in a Graph library. Is proof by testing possible? Muad'Dib [20]asked us Haskell Mentat's about whether it was possible to prove a function correct in a finite number of tests. The discussion brought forth not only answers but some /very cool/ results about the application of compactness (in the topological sense) to testing. Blog noise [21]Haskell news from the [22]blogosphere. Blog posts from people new to the Haskell community are marked with >>>, be sure to welcome them! * Don Stewart (dons): [23]LACSS 2009: Domain Specific Languages and Haskell. * FP Lunch: [24]Factorising folds for faster functions. * Mikael Vejdemo Johansson (Syzygy-): [25][MATH 198] Lecture 4 and a question for the community. More of Syzygy's lectures on category theory, Syzygy also asks about what it means to 'integrate' a datatype. * Neil Brown: [26]Emulating Shared Mutable Variables with Message-Passing Processes. * Galois, Inc: [27]Tech Talk: Writing Linux Kernel Modules with Haskell. * Galois, Inc: [28]Domain Specific Languages for Domain Specific Problems. * FP-Syd: [29]Sydney FP Group: FP-Syd #18.. * Neil Brown: [30]The octopus, the boids and GHC 6.12.1rc1. * Brent Yorgey: [31]Call for submissions: Monad.Reader issue 15. * Brent Yorgey: [32]diagrams 0.2.1, and future plans. * Don Stewart (dons): [33]Self-optimizing data structures: using types to make lists faster. * Martijn van Steenbergen: [34]Context Synonyms. * Joachim Breitner: [35]arbtt: Now with Documentation. * Dan Piponi (sigfpe): [36]Vectors, Invariance, and Math APIs. * Creighton Hogg: [37]How to teach Category Theory?. Quotes of the Week * sproingie: How do you beta-reduce a problem like Maria * Baughn: There's also the language, Quine, whose interpreter is implemented as a symlink to /bin/cat * benmachine: [on the best editor] opinions vary. from correct opinions i.e. mine to other ones. [editor's comment: Obviously, this question is settled, the best editor is *garbled*] * pozic: statistics. a wonderful tool to control people. * FunctorSalad: I think the 'asks', 'gets' etc family of names is sort of cute, like the program is talking about itself in the third person * mmorrow:: Right, that's just beggin for a State monad. About the Haskell Weekly News New editions are posted to [38]the Haskell mailing list as well as to [39]the Haskell Sequence and [40]Planet Haskell. [41]RSS is also available, and headlines appear on [42]haskell.org. To help create new editions of this newsletter, please see the information on [43]how to contribute. Send stories to jfredett . at . gmail . dot . com. The darcs repository is available at darcs get [44]http://patch-tag.com/r/jfredett/HWN2/pullrepo HWN2 . References 1. http://haskell.org/ 2. http://www.reddit.com/r/EnHaskell 3. http://www.reddit.com/r/EnHaskell/comments/9syi3/calculating_the_bend_for_a_curtain_rail_for_a_bay/ 4. http://article.gmane.org/gmane.comp.lang.haskell.general/17572 5. http://article.gmane.org/gmane.comp.lang.haskell.general/17570 6. http://article.gmane.org/gmane.comp.lang.haskell.cafe/64933 7. http://article.gmane.org/gmane.comp.lang.haskell.cafe/64928 8. http://article.gmane.org/gmane.comp.lang.haskell.cafe/64858 9. http://article.gmane.org/gmane.comp.lang.haskell.cafe/64717 10. http://article.gmane.org/gmane.comp.lang.haskell.cafe/64673 11. http://article.gmane.org/gmane.comp.lang.haskell.cafe/64901 12. http://progandprog.blogspot.com/2009/10/video-processing-on-haskell-easy.html 13. http://article.gmane.org/gmane.comp.lang.haskell.cafe/64947 14. http://haskell.org/haskellwiki/ZuriHac#Possible_Attendees 15. http://article.gmane.org/gmane.comp.lang.haskell.cafe/64915 16. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/64899 17. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/64867 18. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/64860 19. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/64812 20. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/64757 21. http://planet.haskell.org/ 22. http://haskell.org/haskellwiki/Blog_articles 23. http://donsbot.wordpress.com/2009/10/16/lacss-2009-domain-specific-languages-and-haskell/ 24. http://sneezy.cs.nott.ac.uk/fplunch/weblog/?p=267 25. http://blog.mikael.johanssons.org/archive/2009/10/math-198-lecture-4-and-a-question-for-the-community/ 26. http://chplib.wordpress.com/2009/10/14/emulating-shared-mutable-variables-with-message-passing-processes/ 27. http://www.galois.com/blog/2009/10/13/haskellkernelmodules/ 28. http://www.galois.com/blog/2009/10/13/domain-specific-languages-for-domain-specific-problems/ 29. http://www.mega-nerd.com/erikd/Blog/FP-Syd/fp-syd-18.html 30. http://chplib.wordpress.com/2009/10/12/the-octopus-the-boids-and-ghc-6-12-1rc1/ 31. http://byorgey.wordpress.com/2009/10/12/call-for-submissions-monad-reader-issue-15/ 32. http://byorgey.wordpress.com/2009/09/24/diagrams-0-2-1-and-future-plans/ 33. http://donsbot.wordpress.com/2009/10/11/self-optimizing-data-structures-using-types-to-make-lists-faster/ 34. http://martijn.van.steenbergen.nl/journal/2009/10/11/context-synonyms/ 35. https://www.joachim-breitner.de/blog/archives/342-arbtt-Now-with-Documentation.html 36. http://blog.sigfpe.com/2009/10/vectors-invariance-and-math-apis.html 37. http://abstractabsurd.blogspot.com/2009/10/how-to-teach-category-theory.html 38. http://www.haskell.org/mailman/listinfo/haskell 39. http://sequence.complete.org/ 40. http://planet.haskell.org/ 41. http://sequence.complete.org/node/feed 42. http://haskell.org/ 43. http://haskell.org/haskellwiki/HWN 44. http://patch-tag.com/r/jfredett/HWN2/pullrepo%20HWN2 From blume at tti-c.org Mon Oct 19 22:31:17 2009 From: blume at tti-c.org (Matthias Blume) Date: Mon Oct 19 22:08:12 2009 Subject: [Haskell] *** extended deadline: FLOPS 2010: Last Call for Papers *** Message-ID: <6A8F995A-9D03-44C4-9D51-A7B918972E7B@tti-c.org> ---------------------------------------------------------------------------- LAST CALL FOR PAPERS Tenth International Symposium on Functional and Logic Programming (FLOPS 2010) April 19-21, 2010 Sendai, Japan http://www.kb.ecei.tohoku.ac.jp/flops2010/ ** EXTENDED SUBMISSION DEADLINES ** abstracts: October 27, 2009 papers: November 3, 2009 FLOPS is a forum for research on all issues concerning declarative programming, including functional programming and logic programming, and aims to promote cross-fertilization and integration between the two paradigms. Previous FLOPS meetings were held in Fuji Susono (1995), Shonan Village (1996), Kyoto (1998), Tsukuba (1999), Tokyo (2001), Aizu (2002), Nara (2004), Fuji Susono (2006), and Ise (2008). TOPICS FLOPS solicits original papers in all areas of functional and logic programming, including (but not limited to): Declarative Pearls: new and excellent declarative programs with illustrative applications. Language issues: language design and constructs, programming methodology, integration of paradigms, interfacing with other languages, type systems, constraints, concurrency and distributed computing. Foundations: logic and semantics, rewrite systems and narrowing, type theory, proof systems. Implementation issues: compilation techniques, memory management, program analysis and transformation, partial evaluation, parallelism. Applications: case studies, real-world applications, graphical user interfaces, Internet applications, XML, databases, formal methods and model checking. The proceedings will be published as an LNCS volume. The proceedings of the previous meeting (FLOPS 2008) were published as LNCS 4989. INVITED SPEAKERS TBD PC CO-CHAIRS Matthias Blume (Google, Chicago, USA) German Vidal (Technical University of Valencia, Spain) CONFERENCE CHAIR Naoki Kobayashi (Tohoku University, Sendai, Japan) PC MEMBERS Nick Benton (Microsoft Research, Cambridge, UK) Manuel Chakravarty (University of New South Wales, Australia) Michael Codish (Ben-Gurion University of the Negev, Israel) Bart Demoen (Katholieke Universiteit Leuven, Belgium) Agostino Dovier (University of Udine, Italy) John P. Gallagher (Roskilde University, Denmark) Maria Garcia de la Banda (Monash University, Australia) Michael Hanus (University of Kiel, Germany) Atsushi Igarashi (Kyoto University, Japan) Patricia Johann (Rutgers University, USA) Shin-ya Katsumata (Kyoto University, Japan) Michael Leuschel (University of Dusseldorf, Germany) Francisco Lopez-Fraguas (Complutense University of Madrid, Spain) Paqui Lucio (University of the Basque Country, Spain) Yasuhiko Minamide (University of Tsukuba, Japan) Frank Pfenning (Carnegie Mellon University, USA) Francois Pottier (INRIA, France) Tom Schrijvers (Katholieke Universiteit Leuven, Belgium) Chung-chieh "Ken" Shan (Rutgers University, USA) Zhong Shao (Yale University, USA) Jan-Georg Smaus (University of Freiburg, Germany) Nobuko Yoshida (Imperial College London, UK) LOCAL CHAIR Eijiro Sumii (Tohoku University, Sendai, Japan) SUBMISSION Submissions must be unpublished and not submitted for publication elsewhere. Work that already appeared in unpublished or informally published workshops proceedings may be submitted. Submissions should fall into one of the following categories: Regular research papers: they should describe new results and will be judged on originality, correctness, and significance. System descriptions: they should contain a link to a working system and will be judged on originality, usefulness, and design. All submissions must be written in English and can be up to 15 proceedings pages long. Authors are strongly encouraged to use LaTeX2e and the Springer llncs class file, available at http://www.springer.de/comp/lncs/authors.html Regular research papers should be supported by proofs and/or experimental results. In case of lack of space, this supporting information should be made accessible otherwise (e.g., a link to a web page, or an appendix). Papers should be submitted electronically at http://www.easychair.org/conferences/?conf=flops2010 IMPORTANT DATES Submission deadlines: - Abstract: October 27, 2009 - Paper: November 3, 2009 Author notification: December 21, 2009 Camera-ready copy: January 24, 2010 Conference: April 19-21, 2010 PLACE Sendai, Japan Some previous FLOPS: FLOPS 2008, Ise: http://www.math.nagoya-u.ac.jp/~garrigue/FLOPS2008/ FLOPS 2006, Fuji Susono: http://hagi.is.s.u-tokyo.ac.jp/FLOPS2006/ FLOPS 2004, Nara FLOPS 2002, Aizu: http://www.ipl.t.u-tokyo.ac.jp/FLOPS2002/ FLOPS 2001, Tokyo: http://www.ueda.info.waseda.ac.jp/flops2001/ SPONSOR Japan Society for Software Science and Technology (JSSST), SIG-PPL Graduate School of Information Sciences, Tohoku University International Information Science Foundation IN COOPERATION with AAFS (Asian Association for Foundation of Software) ACM SIGPLAN ALP (Association for Logic Programming) ---------------------------------------------------------------------------- From dth.tss at gmail.com Thu Oct 22 00:57:05 2009 From: dth.tss at gmail.com (David Harley) Date: Thu Oct 22 00:35:09 2009 Subject: [Haskell] ANNOUNCE: qtHaskell-1.1.3 Message-ID: A new release of qtHaskell (version 1.1.3) is available at http://qthaskell.berlios.de See the documentation provided on-line and with the downloads -- in particular the "qtHaskell primer" -- for details of the new features. David Harley -- Using Opera's revolutionary e-mail client: http://www.opera.com/mail/ -------------- next part -------------- Skipped content of type multipart/related From dons at galois.com Thu Oct 22 01:13:35 2009 From: dons at galois.com (Don Stewart) Date: Thu Oct 22 00:50:29 2009 Subject: [Haskell] ANNOUNCE: qtHaskell-1.1.3 In-Reply-To: References: Message-ID: <20091022051335.GA16241@whirlpool.galois.com> Wonderful news. Thank you. -- Don dth.tss: > A new release of qtHaskell (version 1.1.3) is available at > > http://qthaskell.berlios.de > > See the documentation provided on-line and with the downloads -- in > particular the "qtHaskell primer" -- for details of the new > features. > > David Harley > > -- > Using Opera's revolutionary e-mail client: http://www.opera.com/mail/ > _______________________________________________ > Haskell mailing list > Haskell@haskell.org > http://www.haskell.org/mailman/listinfo/haskell From demis at dimi.uniud.it Thu Oct 22 11:18:32 2009 From: demis at dimi.uniud.it (demis@dimi.uniud.it) Date: Thu Oct 22 10:55:25 2009 Subject: [Haskell] 2nd CFP: JSC Special Issue on Automated Verification and Specification of Web Systems Message-ID: <20091022151832.B0E953FC112@sole.dimi.uniud.it> Skipped content of type multipart/alternative From kyagrd at gmail.com Fri Oct 23 02:49:50 2009 From: kyagrd at gmail.com (Ahn, Ki Yung) Date: Fri Oct 23 02:25:12 2009 Subject: [Haskell] ANN: quickcheck-poly - Automating QuickCheck for polymorphic/overloaded properties in a small world of types Message-ID: Often times QuickCheck properties are polymophic/overloaded without giving a monomorphic type signature. But there can be several types that you are interested. You can write scripts that check all the types you are interested annotating the generic property for each different monotype, which is a tedious work to do. Here, I automated this via hint (a Haskell Interpreter Library). How it works is it first asks a type of a property to the Haskell interpreter and gets a type string, identifies type variables that start with lowercase alphabet, generate all possible substitution that may or may not be a correct type, stick the type string to the property name as a signature and collect only the meaningful types, and then finally run quickCheck over each meaningful types. The example below clearly illustrates what it does. P.S. If there is a way to work this out without hint and string manipulation I would be happy to hear that. I've tried template haskell but didn't work since you cannot test whether given type is correct or instance of some class; it should be correct in the first place, no way to recover from failure of type checking. import Test.QuickCheck.PolyQC import Prop -- the module that defiens the properties p0, p1, p2, p3, p4 -- p0 x = x == x -- p1 x y z = x + (y + z) == (x + y) + z -- p2 x y = x + y == y + x -- p3 x = x == negate (negate x) -- p4 p = (fst p, snd p) == p main = do putStrLn "testing p0 =======================================" print =<< polyQuickCheck' "Prop" "p0" ["Bool","Int","Double"] putStrLn "testing p1 =======================================" print =<< polyQuickCheck' "Prop" "p1" ["Bool","Int","Double"] putStrLn "testing p2 =======================================" print =<< polyQuickCheck' "Prop" "p2" ["Bool","Int","Double"] putStrLn "testing p3 =======================================" print =<< polyQuickCheck' "Prop" "p3" ["Bool","Int","Double"] putStrLn "testing p4 =======================================" print =<< polyQuickCheck' "Prop" "p4" ["Bool","Int","Double"] return () {- *Main> :t p0 p0 :: (Eq a) => a -> Bool *Main> :t p1 p1 :: (Num a) => a -> a -> a -> Bool *Main> :t p2 p2 :: (Num a) => a -> a -> Bool *Main> :t p3 p3 :: (Num a) => a -> Bool *Main> :t p4 p4 :: (Eq a, Eq b) => (a, b) -> Bool *Main> main testing p0 ======================================= Right ["(\"(Eq Bool) => Bool -> Bool\",+++ OK, passed 100 tests. ())","(\"(Eq Int) => Int -> Bool\",+++ OK, passed 100 tests. ())","(\"(Eq Double) => Double -> Bool\",+++ OK, passed 100 tests. ())"] testing p1 ======================================= Right ["(\"(Num Int) => Int -> Int -> Int -> Bool\",+++ OK, passed 100 tests. ())","(\"(Num Double) => Double -> Double -> Double -> Bool\",*** Failed! Falsifiable (after 9 tests and 2 shrinks): 4.0 -26.0 8.777291602197652 ())"] testing p2 ======================================= Right ["(\"(Num Int) => Int -> Int -> Bool\",+++ OK, passed 100 tests. ())","(\"(Num Double) => Double -> Double -> Bool\",+++ OK, passed 100 tests. ())"] testing p3 ======================================= Right ["(\"(Num Int) => Int -> Bool\",+++ OK, passed 100 tests. ())","(\"(Num Double) => Double -> Bool\",+++ OK, passed 100 tests. ())"] testing p4 ======================================= Right ["(\"(Eq Bool, Eq Bool) => (Bool, Bool) -> Bool\",+++ OK, passed 100 tests. ())","(\"(Eq Bool, Eq Int) => (Bool, Int) -> Bool\",+++ OK, passed 100 tests. ())","(\"(Eq Bool, Eq Double) => (Bool, Double) -> Bool\",+++ OK, passed 100 tests. ())","(\"(Eq Int, Eq Bool) => (Int, Bool) -> Bool\",+++ OK, passed 100 tests. ())","(\"(Eq Int, Eq Int) => (Int, Int) -> Bool\",+++ OK, passed 100 tests. ())","(\"(Eq Int, Eq Double) => (Int, Double) -> Bool\",+++ OK, passed 100 tests. ())","(\"(Eq Double, Eq Bool) => (Double, Bool) -> Bool\",+++ OK, passed 100 tests. ())","(\"(Eq Double, Eq Int) => (Double, Int) -> Bool\",+++ OK, passed 100 tests. ())","(\"(Eq Double, Eq Double) => (Double, Double) -> Bool\",+++ OK, passed 100 tests. ())"] -} From niklas.broberg at gmail.com Fri Oct 23 15:01:42 2009 From: niklas.broberg at gmail.com (Niklas Broberg) Date: Fri Oct 23 14:38:34 2009 Subject: [Haskell] ANN: haskell-src-exts-1.2.0 Message-ID: Fellow Haskelleers, I'm pleased to announce the release of haskell-src-exts-1.2.0! * On hackage: http://hackage.haskell.org/package/haskell-src-exts * Via cabal: cabal install haskell-src-exts * Darcs repo: http://code.haskell.org/haskell-src-exts Version 1.2.0 is a new major release, following the PVP, as it contains a few backwards-incompatible changes, as well as some major changes that are supposedly backwards-compatible in theory, but as much of it is new and untested in practice there may be some regressions (bugs). The main new thing in 1.2.0 is the integration of the Annotated machinery into the package proper, for instance all parsing is now handled by the fully location-aware parser. haskell-src-exts-1.2.0: ==================== * Language.Haskell.Exts.Annotated.Simplify provides translation from an annotated AST to the old simple AST. * Behind-the-scenes integration of the new exact parser and lexer to do all parsing (using the above mentioned simplifier if the old AST version is requested). * All syntactic nodes now derive Eq, Ord and Show. * Pretty instance for SrcSpan. * Top-level expressions are now treated as implicit TH splice declarations (as per GHC HEAD). Note that this incurs a non-backwards-compatible change to the AST. * Empty data declarations may now have explicit kind annotations. * AST (and Pretty/Exact) support for kind variables (not yet parser support). * Error messages now extensively use prettyPrint instead of show for AST elements and locations, leading to way neater messages. * Bug fix to not crash ungracefully when encountering type equality predicates in proper types. * Liberalise line comments (as per GHC) to allow a line comment on the last line of a source file. Please help me test and report! Grab a darcs version, put your source files in the Test/examples dir, and go cabal test (in the top dir). Any failing cases not due to CPP or literate source files (for the exact-printer), please report to the trac: http://trac.haskell.org/haskell-src-exts Cheers, /Niklas From jfredett at gmail.com Sat Oct 24 01:47:43 2009 From: jfredett at gmail.com (jfredett@gmail.com) Date: Sat Oct 24 01:24:32 2009 Subject: [Haskell] Haskell Weekly News: Issue 136 - October 24, 2009 Message-ID: <4ae294ff.9553f10a.0aa0.17de@mx.google.com> --------------------------------------------------------------------------- Haskell Weekly News http://sequence.complete.org/hwn/20091024 Issue 136 - October 24, 2009 --------------------------------------------------------------------------- Welcome to issue 136 of HWN, a newsletter covering developments in the [1]Haskell community. Short one this week, I have GREs today, so I've spent more time aggregating GRE knowledge rather than Haskell news. Till next week, Haskellers, The Haskell Weekly News! Announcements PastePipe -- a CLI for hpaste instances. Rogan Creswick [2]announced a new version of PastePipe, a library which reads from stdin and posts it to an hpaste instance (defaulting to hpaste.org) haskell-src-exts-1.2.0. Niklas Broberg [3]announced a major release of haskell-src-exts. Several breaking changes, a few (ideally) backwards compatable changes. See the post for all the details. mecha-0.0.0. Tom Hawkins [4]announced a very cool new DSL in Haskell for Constructive Solid Modelling. GPipe 1.02 and Vec-Transform 1.0.1. Tobias Bexelius [5]announced new versions of these packages, only a few API changes Data.Stream 0.4. Wouter Swierstra [6]announced a very delicate change to Data.Stream involving irrefutable patterns. Specifically added them in functions which produce new streams from old. strptime bindings. Eugene Kirpichov [7]announced bindings to strptime. cereal-0.2. Trevor Elliott [8]announced a new version of the cereal library, a variation on the `binary` package which provides strict parsing. quickcheck-poly. Ki Yung Ahn [9]announced a package for testing polymorphic functions automatically. 2nd CFP: JSC Special Issue on Automated Verification and Specification of Web Systems. demis [10]announced a special issue of the Journal of Symbolic Computation. The issue contains articles relating to Automated Specification and Verification of Web Systems. qtHaskell-1.1.3. David Harley [11]announced a new version of qtHaskell. Discussion Is there in Haskell the eval function? Waldemar Biernacki [12]asked about an `eval` function for Haskell. What's this pattern called? Martijn van Steenbergen [13]asked about a common pattern for an simple EDSL AST-like type. Problems with Haskell. Philippos Apolinarius [14]forwarded his response to a [15]Clean programmer who planned a move to Haskell upon fears of Clean being around for the long term. A very nice read. Statically checked binomail heaps? Maciej Kotowicz [16]talked about his implementation of Statically Checked Binomial Heaps in Haskell Blog noise [17]Haskell news from the [18]blogosphere. Blog posts from people new to the Haskell community are marked with >>>, be sure to welcome them! * Mikael Vejdemo Johansson (Syzygy-): [19][MATH198] Lecture 5 is up. * JP Moresmau: [20]Releasing my code on the unsuspecting public (EclipseFP). * Neil Brown: [21]Benchmarking STM with Criterion. * Galois, Inc: . * Brent Yorgey: [22]Typeclassopedia in Japanese!. * Neil Brown: [23]An early look at ThreadScope, a tool for profiling concurrent and parallel Haskell programs. * FP-Syd: [24]Sydney FP Group: FP-Syd #19.. * Michael Snoyman: [25]Monadic pairs and Kleisli arrows. * Martijn van Steenbergen: [26]Transforming polymorphic values. * Manuel M T Chakravarty: [27]Multicore Haskell Now!. * Don Stewart (dons): [28]Multicore Haskell Now! ACM Reflections | Projections 2009. * Dan Piponi (sigfpe): [29]What Category do Haskell Types and Functions Live In?. * Manuel M T Chakravarty: [30]Don Stewart's talk on Domain Specific Languages and Haskell. Quotes of the Week * Veinor: I program in austere haskell. I name all my variables a, a', a'', a''', etc * ddarius: releases network version 127.0.0.1 * Berengal: 'Bobby Boolean felt horrible. What did he ever do to the other values? He was just a simple bit, a simple answer to a simple question! Suddenly he felt his insides churn; he felt an exception coming on! Oh no! What should he do, now that he was outside of IO?' * Berengal: '"Go away! You're not like us!" the other values yelled. "You're impure! Impure! Impure! Impure!" they started chanting.' * dpratt71: so I read somewhere that the unofficial motto of Haskell was "avoid success at all costs"... dpratt71: Yeah. We failed. * Warrigal: Note to self: don't do maximum [1..]. * mauke: the first and foremost task of a haskell compiler is to break haskell programs * ksf: ...premature generalisation is the root of all procrastination. * jimi_hendrix: that took longer than it should have, but it feels so pure * ddarius: Unfortunately, the logic programming community has this unhealthy death grip on Prolog. About the Haskell Weekly News New editions are posted to [31]the Haskell mailing list as well as to [32]the Haskell Sequence and [33]Planet Haskell. [34]RSS is also available, and headlines appear on [35]haskell.org. To help create new editions of this newsletter, please see the information on [36]how to contribute. Send stories to jfredett . at . gmail . dot . com. The darcs repository is available at darcs get [37]http://patch-tag.com/r/jfredett/HWN2/pullrepo HWN2 . References Visible links 1. http://haskell.org/ 2. http://article.gmane.org/gmane.comp.lang.haskell.cafe/65222 3. http://article.gmane.org/gmane.comp.lang.haskell.cafe/65219 4. http://article.gmane.org/gmane.comp.lang.haskell.cafe/65134 5. http://article.gmane.org/gmane.comp.lang.haskell.cafe/65119 6. http://article.gmane.org/gmane.comp.lang.haskell.cafe/65116 7. http://article.gmane.org/gmane.comp.lang.haskell.cafe/65061 8. http://article.gmane.org/gmane.comp.lang.haskell.cafe/65043 9. http://article.gmane.org/gmane.comp.lang.haskell.general/17586 10. http://article.gmane.org/gmane.comp.lang.haskell.general/17585 11. http://article.gmane.org/gmane.comp.lang.haskell.general/17583 12. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/65153 13. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/65148 14. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/65014 15. http://clean.cs.ru.nl/ 16. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/64998 17. http://planet.haskell.org/ 18. http://haskell.org/haskellwiki/Blog_articles 19. http://blog.mikael.johanssons.org/archive/2009/10/math198-lecture-5-is-up/ 20. http://jpmoresmau.blogspot.com/2009/10/releasing-my-code-on-unsuspecting.html 21. http://chplib.wordpress.com/2009/10/21/benchmarking-stm-with-criterion/ 22. http://byorgey.wordpress.com/2009/10/20/typeclassopedia-in-japanese/ 23. http://chplib.wordpress.com/2009/10/19/an-early-look-at-threadscope/ 24. http://www.mega-nerd.com/erikd/Blog/FP-Syd/fp-syd-19.html 25. http://blog.snoyman.com/2009/10/19/monadic-pairs-and-kleisli-arrows/ 26. http://martijn.van.steenbergen.nl/journal/2009/10/18/transforming-polymorphic-values/ 27. http://justtesting.org/post/216085196 28. http://donsbot.wordpress.com/2009/10/17/multicore-haskell-now-acm-reflections-projections-2009/ 29. http://blog.sigfpe.com/2009/10/what-category-do-haskell-types-and.html 30. http://justtesting.org/post/215438784 31. http://www.haskell.org/mailman/listinfo/haskell 32. http://sequence.complete.org/ 33. http://planet.haskell.org/ 34. http://sequence.complete.org/node/feed 35. http://haskell.org/ 36. http://haskell.org/haskellwiki/HWN 37. http://patch-tag.com/r/jfredett/HWN2/pullrepo%20HWN2 Hidden links: 38. http://www.galois.com/blog/2009/10/20/crenshaw-simplex/ From dons at galois.com Sun Oct 25 22:45:50 2009 From: dons at galois.com (Don Stewart) Date: Sun Oct 25 22:22:34 2009 Subject: [Haskell] ANNOUNCE: xmonad 0.9 is now available! Message-ID: <20091026024550.GD594@whirlpool.galois.com> http://xmonad.org The xmonad dev team is pleased to announce xmonad 0.9! We think this is a great release. The headlines: * Actions.SpawnOn: Windows go to the workspace they were launched on, even if you're no longer viewing that workspace. Especially handy for slow-launching applications like Firefox * Actions.GridSelect: graphically go to, select, do things with windows, workspaces, prompts ... * Many new window layouts: http://is.gd/4BzAI * Many new scriptable actions: http://is.gd/4BzCN * Focus changes across screens with mouse movement, no longer requiring a click, even for empty workspaces. * Improved xmobar/dzen statusbar functions, easier to use, more compositional * New --restart command line flag to restart a running xmonad process. * Supports for multi-module local configuration files * Support for user-defined X event handling * xmonad comes with 180 extensions for enhancing functionality * Over 3000 commits have been made to the project. Extensive change logs: http://haskell.org/haskellwiki/Xmonad/Notable_changes_since_0.8 About: xmonad is a leading tiling window manager, known for its lightness, reliability, extensibility and efficiency. It supports true multiheaded tiling, and rich, rapid customisation. It is also highly portable, running on regular desktops, laptops, netbooks, phones, game consoles, the OLPC, and more. Features: * Very stable, fast, small and simple. * Automatic window tiling and management * First class keyboard support: a mouse is unnecessary * Full support for tiling windows on multi-head displays * Full support for floating, tabbing and decorated windows * Full support for Gnome and KDE utilities * XRandR support to rotate, add or remove monitors * Per-workspace layout algorithms * Per-screens custom status bars * Compositing support * Powerful, stable customisation and reconfiguration * Large extension library * Excellent, extensive documentation * Large, active development team, support and community Get it! Information, screenshots, documentation, tutorials and community resources are available from the xmonad home page: http://xmonad.org The 0.9 release, and its dependencies, are available from hackage.haskell.org: http://hackage.haskell.org/package/xmonad xmonad packages are available in pretty much every package system, including. Debian, Gentoo, Arch, Ubuntu, OpenBSD, NetBSD, FreeBSD, Gobo, NixOS, Source Mage, Slackware and 0.9 packages will appear in coming days (some are already available). On the fly updating to xmonad 0.9 is supported, without losing your session! You can even use cabal-install: $ cabal update $ cabal install xmonad-0.9 $ cabal install xmonad-contrib-0.9 $ xmonad --recompile mod-q Extensions: xmonad comes with a huge library of extensions (now around 15 times the size of xmonad itself), contributed by viewers like you. Extensions allow for all sorts of functionality and enhancements to the window manager, via Haskell in your config file. For more information on using and writing extensions see the webpage. The library of extensions is available from hackage: http://hackage.haskell.org/cgi-bin/xmonad-contrib Full documentation for using and writing your own extensions: http://xmonad.org/documentation.html This release brought to you by the xmonad dev team: Spencer Janssen Don Stewart Adam Vogt Brent Yorgey Daniel Wagner Devin Mullins Daniel Schoepe Braden Shepherdson Nicolas Pouillard Roman Cheplyaka Gwern Branwen Lukas Mai Featuring code contributions from over 80 developers: Aaron Denney Jason Creighton Alec Berryman Alex Tarkovsky Alexandre Buisse Andrea Rossato Austin Seipp Bas van Dijk Ben Voui Brandon Allbery Chris Mears Christian Thiemann Clemens Fruhwirth Daniel Neri Anders Engstrom Dave Harrison David Glasser David Lazar Dmitry Kurochkin Dominik Bruhn Dougal Stanton Eric Mertens Ferenc Wagner Jan Vornberger Hans Philipp Annen Ivan Tarasov Ivan Veselov Jamie Webb Jeremy Apthorp Malebria Joachim Breitner Joachim Fasting Joe Thornber Joel Suovaniemi Juraj Hercek Justin Bogner Kai Grossjohann Karsten Schoelzel Klaus Weidner Mathias Stearn Mats Jansborg Matsuyama Tomohiro Michael Fellinger Michael Sloan Miikka Koskinen Neil Mitchell Nelson Elhage Nick Burlett Quentin Moser Nils Anders Danielsson Peter De Wachter Robert Marlow Sam Hughes Shachaf Ben-Kiki Shae Erisson Simon Peyton Jones Stefan O'Rear Tom Rauchenwald Valery V. Vorotyntsev Will Farrington Yaakov Nemoy timthelion Rickard Gustafson Trevor Elliott Ian Zerny Ivan Miljenovic Marco e Silva Michal Janeczek David Roundy Wirt Wolff Max Rabkin Sean Escriva Norbert Zeh Alexey Khudyakov Ismael Carnales Luis Cabellos Konstantin Sobolev Dmitry Astapov Andres Salomon Aleksandar Dimitrov Ilya Portnov Michal Trybus Travis Hartwell As well as the support of many others on the #xmonad and #haskell IRC channels, and the wider Haskell and window manager communities. Thanks to everyone for their support! From caseyh at istar.ca Sun Oct 25 23:04:27 2009 From: caseyh at istar.ca (Casey Hawthorne) Date: Sun Oct 25 22:41:32 2009 Subject: [Haskell] Is there a way to embed a Haskell interpreter/compiler in a browser. I think this would be a safer language than JavaScript. In-Reply-To: <20091026024550.GD594@whirlpool.galois.com> References: <20091026024550.GD594@whirlpool.galois.com> Message-ID: Is there a way to embed a Haskell interpreter/compiler in a browser. I think this would be a safer language than JavaScript. -- Regards, Casey From martijn at van.steenbergen.nl Mon Oct 26 14:07:28 2009 From: martijn at van.steenbergen.nl (Martijn van Steenbergen) Date: Mon Oct 26 13:44:23 2009 Subject: [Haskell] ANN: HoleyMonoid-0.1 Message-ID: <4AE5E560.4080005@van.steenbergen.nl> Hello! I'm happy to announce the first release of HoleyMonoid, a datatype that helps you build monoids with holes in them. The holes are filled in later using normal function application. For example: > > let holey = now "x = " > . later show > . now ", y = " > . later show > > run holey 3 5 > "x = 3, y = 5" The library is available on Hackage: http://hackage.haskell.org/package/HoleyMonoid Thanks to David Menendez for the name and Sjoerd Visscher for help with rewriting and simplifying. :-) Martijn. From tobias_bexelius at hotmail.com Mon Oct 26 17:37:01 2009 From: tobias_bexelius at hotmail.com (Tobias Bexelius) Date: Mon Oct 26 17:13:47 2009 Subject: [Haskell] ANN: GPipe-TextureLoad 1.0.0 and GPipe 1.0.3 Message-ID: I've uploaded a new version of GPipe as well as a utility package for loading textures. GPipe 1.0.3: * Fixes a major bug in the shader generation GPipe-TextureLoad 1.0.0: * Helps loading GPipe textures from file. It is based on the stb-image package, and supports subsets of the JPG, PNG, TGA, BMP and PSD formats. _________________________________________________________________ Hitta k?rleken nu i v?r! http://dejting.se.msn.com/channel/index.aspx?trackingid=1002952 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.haskell.org/pipermail/haskell/attachments/20091026/7f84e864/attachment.html From orclev at gmail.com Mon Oct 26 19:03:02 2009 From: orclev at gmail.com (Kyle Murphy) Date: Mon Oct 26 18:39:43 2009 Subject: [Haskell] Re: [Haskell-cafe] Is there a way to embed a Haskell interpreter/compiler in a browser. I think this would be a safer language than JavaScript. In-Reply-To: <775c14610910260022p755d5db3ka0ece610ad55d1e2@mail.gmail.com> References: <20091026024550.GD594@whirlpool.galois.com> <775c14610910260022p755d5db3ka0ece610ad55d1e2@mail.gmail.com> Message-ID: <2db78cee0910261603g7c4e3f75i7fb340c2aca6a294@mail.gmail.com> I think it also depends on what exactly you're trying to do. If you're trying to do client side scripting using Haskell (much the way JS is used currently), that is including a Haskell "script" from some page that's intended to be executed on the client, you can't really do that. As Mathijs pointed out there are some projects that can let you use Haskell to generate JavaScript which provides a reasonable measure of safety (in much the same way that the final binary generated from Haskell is still safe even though machine code itself isn't), although isn't exactly the same thing. If all you want to do is execute some Haskell code inside of the browser process you could always us FFI to use the C plugin hooks to create a Haskell based plugin. Doing that and using something like hint you could even embed a Haskell "interpreter" inside of the browser, but of course you couldn't rely on something like that being available on any browser except your own. -R. Kyle Murphy -- Curiosity was framed, Ignorance killed the cat. On Mon, Oct 26, 2009 at 03:22, Mathijs Kwik wrote: > There used to be http://www.haskell.org/haskellwiki/Yhc/Javascript, which > is a great plan, but got abandoned (I think). > I still hope something like that will return some day (and not just for > javascript, I would like to compile haskell to java bytecode or .net). > > For something that's usable now, have a look at HJScript and HJavaScript. > > Those are low-level libraries allowing you to generate javascript safely in > haskell. > Low level because they are the bare minimum that javascript has to offer, > but you can probably easily build more higher-level constructs on top of it > in haskell. > > If you need something more stable/complete for now, I advise you to use GWT > (Google Web Toolkit). It compiles java source code into javascript, taking > care of most browser differences and language oddities, and it has a very > nice library to use (also if you don't use java on the server side. It can > create fully independent client-side code). I know, it's not haskell, but > compared to javascript, java is very safe&stable. > > Mathijs > > > > > On Mon, Oct 26, 2009 at 4:04 AM, Casey Hawthorne wrote: > >> Is there a way to embed a Haskell interpreter/compiler in a browser. >> >> I think this would be a safer language than JavaScript. >> >> -- >> Regards, >> Casey >> _______________________________________________ >> Haskell-Cafe mailing list >> Haskell-Cafe@haskell.org >> http://www.haskell.org/mailman/listinfo/haskell-cafe >> > > > _______________________________________________ > Haskell-Cafe mailing list > Haskell-Cafe@haskell.org > http://www.haskell.org/mailman/listinfo/haskell-cafe > > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.haskell.org/pipermail/haskell/attachments/20091026/bcd9298c/attachment.html From tobias_bexelius at hotmail.com Tue Oct 27 02:15:10 2009 From: tobias_bexelius at hotmail.com (Tobias Bexelius) Date: Tue Oct 27 01:51:57 2009 Subject: [Haskell] RE: ANN: GPipe-TextureLoad 1.0.0 and GPipe 1.0.3 Message-ID: I accidently missed a spot in the latest GPipe bugfix, this is fixed in version 1.0.4 that I've just uploaded. Sorry for that. /Tobias Bexelius From: tobias_bexelius@hotmail.com To: haskell-cafe@haskell.org; haskell@haskell.org; hopengl@haskell.org Subject: ANN: GPipe-TextureLoad 1.0.0 and GPipe 1.0.3 Date: Mon, 26 Oct 2009 22:37:01 +0100 I've uploaded a new version of GPipe as well as a utility package for loading textures. GPipe 1.0.3: * Fixes a major bug in the shader generation GPipe-TextureLoad 1.0.0: * Helps loading GPipe textures from file. It is based on the stb-image package, and supports subsets of the JPG, PNG, TGA, BMP and PSD formats. kolla in resten av Windows LiveT. Inte bara e-post - Windows LiveT ?r mycket mer ?n din inkorg. Mer ?n bara meddelanden _________________________________________________________________ Hitta k?rleken nu i v?r! http://dejting.se.msn.com/channel/index.aspx?trackingid=1002952 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.haskell.org/pipermail/haskell/attachments/20091027/308c2e82/attachment.html From pirelo at googlemail.com Tue Oct 27 13:16:48 2009 From: pirelo at googlemail.com (Pablo Nogueira) Date: Tue Oct 27 12:53:23 2009 Subject: [Haskell] ANN: WFLP2010 2nd CFP: LNCS + invited speaker + abstract due Nov 9 Message-ID: ******************************************************************** Second Call For Papers 19th International Workshop on Functional and (Constraint) Logic Programming Madrid, Spain, January 17, 2010 http://babel.ls.fi.upm.es/events/wflp2010/ ********* colocated with Principles of Programming Languages POPL 2010 http://www.cse.psu.edu/popl/10/ ******************************************************************** IMPORTANT DATES Abstract Submission: November 9, 2009 Full Paper Submission: November 15, 2009 Acceptance Notification: December 15, 2009 Preliminary Proceedings: January 5, 2010 Workshop: January 17, 2010 SCOPE The aim of the Workshop on Functional and (Constraint) Logic Programming is to bring together researchers interested in functional programming and (constraint) logic programming with special emphasis on the integration of both paradigms and of other declarative programming extensions. It promotes the cross-fertilizing exchange of ideas and experiences among researchers and students from the different communities interested in the foundations, applications, and combinations of high-level declarative programming languages and related areas. The previous WFLP editions are: WFLP 2009 (Brasilia, Brazil), WFLP 2008 (Siena, Italy), WFLP 2007 (Paris, France), WFLP 2006 (Madrid, Spain), WCFLP 2005 (Tallinn, Estonia), WFLP 2004 (Aachen, Germany), WFLP 2003 (Valencia, Spain), WFLP 2002 (Grado, Italy), WFLP 2001 (Kiel, Germany), WFLP 2000 (Benicassim, Spain), WFLP'99 (Grenoble, France), WFLP'98 (Bad Honnef, Germany), WFLP'97 (Schwarzenberg, Germany), WFLP'96 (Marburg, Germany), WFLP'95 (Schwarzenberg, Germany), WFLP'94 (Schwarzenberg, Germany), WFLP'93 (Rattenberg, Germany), and WFLP'92 (Karlsruhe, Germany). LOCATION WFLP 2010 will be held on January 17, 2010 in Madrid, Spain, colocated with the 37th ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages (POPL 2010). WFLP 2010 solicits papers in all areas of functional and (constraint) logic programming, including but not limited to: * Foundations: formal semantics, logic variables, binding and abstract syntax, rewriting and narrowing, unification, constraint solving, dynamics, type theory, meta-theory, effects, etc. * Language Design: security, services, modules, type systems, multi-paradigm languages, concurrency and distribution, objects, libraries, generic programming, interoperability, etc. * Implementation: abstract machines, parallelism, compile-time and run-time optimizations, foreign-language interfaces, memory management, multi-threading, exploiting parallel hardware, etc. * Transformation and Analysis: abstract interpretation, specialization, partial evaluation, program transformation, program calculation, program proof, meta-programming, generative programming, etc. * Software Development: algorithms, data structures, design patterns, components and composition, specification, proof assistants, verification and validation, model checking, debugging, testing, profiling, tracing, etc. * Paradigm Integration: integration of declarative programming with other paradigms or features such as imperative, object-oriented, aspect-oriented, concurrent, real-time programming, event-driven architectures, etc. * Applications: education, industry, commercial uses, domain-specific languages, visual/graphical user interfaces, embedded systems, WWW applications, XML processing, artificial intelligence, knowledge representation and machine learning, deductive databases, advanced programming environments and tools, etc. SUBMISSIONS and PROCEEDINGS Authors are invited to submit papers presenting original unpublished work. Papers must be at most 15 pages long. Exceptionally, authors may surpass the page limit by providing well-marked appendices intended as reviewing aids. Appendices will not appear in the final publication. Submission categories include regular research papers, system descriptions, and short papers describing on-going work (at most 8 pages). Submissions must be formatted in Lecture Notes in Computer Science (LNCS) style. This requirement needs not apply to appendices. Papers should be submitted in pdf format electronically via the web-based submission site http://www.easychair.org/conferences/?conf=wflp2010 Preliminary proceedings will be available at the workshop. Selected authors will be invited to submit a full version of their papers after the workshop. Contributions accepted for the post-workshop proceedings will be published in Springer's Lecture Notes in Computer Science series. INVITED SPEAKER Mariangiola Dezani (University of Torino, Italy) PROGRAM CHAIR Julio Marino (Universidad Politecnica de Madrid, Spain) PROGRAM COMMITTEE Maria Alpuente (Universidad Politecnica de Valencia, Spain) Sergio Antoy (Portland State University, USA) Bernd Brassel (CAU Kiel, Germany) Olaf Chitil (Univ. of Kent, UK) Rachid Echahed (CNRS-IMAG, France) Santiago Escobar (Universidad Politecnica de Valencia, Spain) Moreno Falaschi (Universita di Siena, Italy) Murdoch Gabbay (Heriot-Watt University, UK) Maria Garcia de la Banda (Monash University, Australia) Victor Gulias (Lambdastream SL, Spain) Michael Hanus (CAU Kiel, Germany) Herbert Kuchen (Univ. of Muenster, Germany) Francisco Lopez-Fraguas (Universidad Complutense de Madrid, Spain) James Lipton (Wesleyan University, USA) Mircea Marin (Univ. of Tsukuba, Japan) Juan Jose Moreno-Navarro (Ministry of Science & Innovation, Spain) Brigitte Pientka (McGill University, Canada) -------------- next part -------------- [LNCS + Invited Speaker; Abstract due Nov 9] ******************************************************************** Second Call For Papers 19th International Workshop on Functional and (Constraint) Logic Programming Madrid, Spain, January 17, 2010 http://babel.ls.fi.upm.es/events/wflp2010/ ********* colocated with Principles of Programming Languages POPL 2010 http://www.cse.psu.edu/popl/10/ ******************************************************************** IMPORTANT DATES Abstract Submission: November 9, 2009 Full Paper Submission: November 15, 2009 Acceptance Notification: December 15, 2009 Preliminary Proceedings: January 5, 2010 Workshop: January 17, 2010 SCOPE The aim of the Workshop on Functional and (Constraint) Logic Programming is to bring together researchers interested in functional programming and (constraint) logic programming with special emphasis on the integration of both paradigms and of other declarative programming extensions. It promotes the cross-fertilizing exchange of ideas and experiences among researchers and students from the different communities interested in the foundations, applications, and combinations of high-level declarative programming languages and related areas. The previous WFLP editions are: WFLP 2009 (Brasilia, Brazil), WFLP 2008 (Siena, Italy), WFLP 2007 (Paris, France), WFLP 2006 (Madrid, Spain), WCFLP 2005 (Tallinn, Estonia), WFLP 2004 (Aachen, Germany), WFLP 2003 (Valencia, Spain), WFLP 2002 (Grado, Italy), WFLP 2001 (Kiel, Germany), WFLP 2000 (Benicassim, Spain), WFLP'99 (Grenoble, France), WFLP'98 (Bad Honnef, Germany), WFLP'97 (Schwarzenberg, Germany), WFLP'96 (Marburg, Germany), WFLP'95 (Schwarzenberg, Germany), WFLP'94 (Schwarzenberg, Germany), WFLP'93 (Rattenberg, Germany), and WFLP'92 (Karlsruhe, Germany). LOCATION WFLP 2010 will be held on January 17, 2010 in Madrid, Spain, colocated with the 37th ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages (POPL 2010). WFLP 2010 solicits papers in all areas of functional and (constraint) logic programming, including but not limited to: * Foundations: formal semantics, logic variables, binding and abstract syntax, rewriting and narrowing, unification, constraint solving, dynamics, type theory, meta-theory, effects, etc. * Language Design: security, services, modules, type systems, multi-paradigm languages, concurrency and distribution, objects, libraries, generic programming, interoperability, etc. * Implementation: abstract machines, parallelism, compile-time and run-time optimizations, foreign-language interfaces, memory management, multi-threading, exploiting parallel hardware, etc. * Transformation and Analysis: abstract interpretation, specialization, partial evaluation, program transformation, program calculation, program proof, meta-programming, generative programming, etc. * Software Development: algorithms, data structures, design patterns, components and composition, specification, proof assistants, verification and validation, model checking, debugging, testing, profiling, tracing, etc. * Paradigm Integration: integration of declarative programming with other paradigms or features such as imperative, object-oriented, aspect-oriented, concurrent, real-time programming, event-driven architectures, etc. * Applications: education, industry, commercial uses, domain-specific languages, visual/graphical user interfaces, embedded systems, WWW applications, XML processing, artificial intelligence, knowledge representation and machine learning, deductive databases, advanced programming environments and tools, etc. SUBMISSIONS and PROCEEDINGS Authors are invited to submit papers presenting original unpublished work. Papers must be at most 15 pages long. Exceptionally, authors may surpass the page limit by providing well-marked appendices intended as reviewing aids. Appendices will not appear in the final publication. Submission categories include regular research papers, system descriptions, and short papers describing on-going work (at most 8 pages). Submissions must be formatted in Lecture Notes in Computer Science (LNCS) style. This requirement needs not apply to appendices. Papers should be submitted in pdf format electronically via the web-based submission site http://www.easychair.org/conferences/?conf=wflp2010 Preliminary proceedings will be available at the workshop. Selected authors will be invited to submit a full version of their papers after the workshop. Contributions accepted for the post-workshop proceedings will be published in Springer's Lecture Notes in Computer Science series. INVITED SPEAKER Mariangiola Dezani (University of Torino, Italy) PROGRAM CHAIR Julio Marino (Universidad Politecnica de Madrid, Spain) PROGRAM COMMITTEE Maria Alpuente (Universidad Politecnica de Valencia, Spain) Sergio Antoy (Portland State University, USA) Bernd Brassel (CAU Kiel, Germany) Olaf Chitil (Univ. of Kent, UK) Rachid Echahed (CNRS-IMAG, France) Santiago Escobar (Universidad Politecnica de Valencia, Spain) Moreno Falaschi (Universita di Siena, Italy) Murdoch Gabbay (Heriot-Watt University, UK) Maria Garcia de la Banda (Monash University, Australia) Victor Gulias (Lambdastream SL, Spain) Michael Hanus (CAU Kiel, Germany) Herbert Kuchen (Univ. of Muenster, Germany) Francisco Lopez-Fraguas (Universidad Complutense de Madrid, Spain) James Lipton (Wesleyan University, USA) Mircea Marin (Univ. of Tsukuba, Japan) Juan Jose Moreno-Navarro (Ministry of Science & Innovation, Spain) Brigitte Pientka (McGill University, Canada) From jpm at cs.uu.nl Wed Oct 28 04:10:28 2009 From: jpm at cs.uu.nl (=?ISO-8859-1?Q?Jos=E9_Pedro_Magalh=E3es?=) Date: Wed Oct 28 03:46:59 2009 Subject: [Haskell] ANNOUNCE: regular-0.2 and regular-extras-0.1 Message-ID: <52f14b210910280110j57b4f775j21a4c2fffbcd563d@mail.gmail.com> Hello all, I'm pleased to announce a new version of the regular library which provides generic programming with fixed points for regular datatypes. Many generic programs require information about the recursive positions of a datatype. Examples include the generic fold, generic rewriting, and the Zipper data structure. This approach provides a fixed point view on data which allows these definitions for regular datatypes. It can be seen as a simplification of the Multirec library, which provides similar functionality but for families of (possibly mutually recursive) datatypes. This library is the underlying generic representation mechanism in the paper: Thomas van Noort, Alexey Rodriguez, Stefan Holdermans, Johan Jeuring, Bastiaan Heeren. A Lightweight Approach to Datatype-Generic Rewriting. In Ralf Hinze and Don Syme, editors, Proceedings of the ACM SIGPLAN Workshop on Generic Programming, WGP 2008, Victoria, BC, Canada, September 20, 2008, pages 13?24. ACM Press, 2008. http://people.cs.uu.nl/stefan/pubs/noort08lightweight.html More information is available on the webpage: http://www.cs.uu.nl/wiki/GenericProgramming/Regular Additionally, we have also released a regular-extras package which provides more generic functions operating on the fixed point view provided by regular. Currently the functions provided are: * QuickCheck's arbitrary, with an option to provide size, and frequencies for each constructor; * QuickCheck's coarbitrary; * Data.Binary get and put. Features -------- * A simple library with a fixed point view * Includes detailed examples, such as the generic fold * Forms the basis for a generic rewriting library: http://hackage.haskell.org/package/rewriting * In its current form, this library does not support nested datatypes. Support to access parameters of a datatype is limited. Requirements ------------ * GHC 6.10.1 or later * Cabal 1.2.1 or later Download -------- With cabal-install: cabal install regular cabal install regular-extras Get the packages: http://hackage.haskell.org/package/regular http://hackage.haskell.org/package/regular-extras Get the source: svn checkout https://subversion.cs.uu.nl/repos/project.dgp-haskell.libraries/regular/ svn checkout https://subversion.cs.uu.nl/repos/project.dgp-haskell.libraries/regular-extras/ 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 Pedro -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.haskell.org/pipermail/haskell/attachments/20091028/e1f0a33e/attachment.html From hjgtuyl at chello.nl Thu Oct 29 08:00:55 2009 From: hjgtuyl at chello.nl (Henk-Jan van Tuyl) Date: Thu Oct 29 07:37:26 2009 Subject: [Haskell] ANNOUNCE: GeBoP 1.7 Message-ID: L.S., I have updated and cabalized Daan L?ffler's GeBoP and uploaded it to Hackage. GeBoP, the General Boardgames Player, offers a set of board games: Ataxx, Bamp, Halma, Hez, Kram, Nim, Reversi, TicTacToe, and Zenix. The application also features a brain viewer which enables you to explore the computer's internal game tree. The homepage is: http://www.haskell.org/haskellwiki/GeBoP Regards, Henk-Jan van Tuyl -- http://functor.bamikanarie.com http://Van.Tuyl.eu/ -- From jmillikin at gmail.com Fri Oct 30 17:44:59 2009 From: jmillikin at gmail.com (John Millikin) Date: Fri Oct 30 17:21:28 2009 Subject: [Haskell] ANNOUNCE: dbus-core 0.5 and dbus-client 0.1 Message-ID: <3283f7fe0910301444o7fe94785yec5e5b55b2d30066@mail.gmail.com> These are pure-Haskell client libraries for using the D-Bus protocol. D-Bus is heavily used for inter-application IPC on Free and open-source desktop platforms, such as Linux, OpenSolaris, and FreeBSD. These libraries allow applications written in Haskell to inter-operate with other components of recent GNOME, KDE, and XFCE desktops. This is the first "real" release of these libraries; dbus-core has been published on Hackage for some time, but mostly just to make sure I got the Cabal bits right. I feel they are now stable / featureful enough for public use. Both are available on Hackage: http://hackage.haskell.org/package/dbus-core http://hackage.haskell.org/package/dbus-client --------- "dbus-core" is an implementation of the D-Bus protocol, specifically the parts relevant to clients. Eventually, it will probably grow some functions useful for implementing a message bus as well. It includes type mapping / conversion, an implementation of the wire format (marshaling / unmarshaling), data types for the currently defined message types (METHOD_CALL, METHOD_RETURN, ERROR, and SIGNAL) and a basic parser / generator for introspection documents. It is roughly equivalent in purpose to libdbus. By itself, a protocol implementation is somewhat cumbersome to use, so "dbus-client" is a high-level wrapper. It provides some abstractions like remote object proxies, exported object trees, synchronous method calls, signal reception, and name reservation. Messages are received and processed in separate IO threads, allowing asynchronous method call and signal handling. The purpose between splitting the library into two packages is stability; "dbus-core", ideally, will change only rarely -- performance improvements, new message / data types, etc. It provides a base level of functionality which more specialised libraries may use. "dbus-client" is an example of what such a library could look like, though for now it's not very Haskell-y (IO everywhere, exceptions, explicit locking). By separating the protocol from the client libs, alternative client libs can safely depend on the protocol implementation. --------- To see a sample of the library working, there's a clone of the "dbus-monitor" utility in . Documentation is currently a bit lacking, so for now, the best documentation is the PDF of the source code itself, and the (rather barren) Haddock output: https://dl.getdropbox.com/u/1947532/dbus-core_0.5.pdf https://dl.getdropbox.com/u/1947532/dbus-core_0.5/index.html https://dl.getdropbox.com/u/1947532/dbus-client_0.1.pdf https://dl.getdropbox.com/u/1947532/dbus-client_0.1/index.html Once more people have used it without any major API issues, I'll write up a manual and populate the Haddock entries. Please respond with any feedback, difficulties, or suggestions. I'm particularly interested in ways to improve the public API, since I would rather make any breaking changes *before* anything big depends on these libraries. From jfredett at gmail.com Sat Oct 31 00:38:25 2009 From: jfredett at gmail.com (jfredett@gmail.com) Date: Sat Oct 31 00:14:53 2009 Subject: [Haskell] Haskell Weekly News: Issue 137 - October 31, 2009 Message-ID: <4aebbf41.0703c00a.7ed8.ffffa4c8@mx.google.com> --------------------------------------------------------------------------- Haskell Weekly News http://sequence.complete.org/hwn/20091031 Issue 137 - October 31, 2009 --------------------------------------------------------------------------- Welcome to issue 137 of HWN, a newsletter covering developments in the [1]Haskell community. This week brings a new release of xmonad, some cool bindings to allow interaction with GNOME, KDE, and XFCE desktops and a new version of haskell-mode for the lesser of two editors... Some progress has also been made on the new HWN software, though this was mitigated by the fact that I started playing with the Isabelle theorem prover (after reading about Haskabelle) and so now I find myself convinced I should formally prove all of my software, and also that I'm pretty much incapable of getting things done when cool tools present themselves. In fact, I don't think I'll even be able to finish this [2]editori* [3]Exception: The Haskell Weekly News! Announcements xmonad 0.9 is now available! Don Stewart [4]announced a new version of everyone's favorite Tiling Window Manager, xmonad! The changes and improvments are too numerous to mention, see the post for details! WFLP2010 2nd CFP: LNCS + invited speaker + abstract due Nov 9. Pablo Nogueira [5]announced a second call for papers for the Workshop on Functional and Constraint Logic Programming. dbus-core 0.5 and dbus-client 0.1. John Millikin [6]announced pure-Haskell client libraries for using the D-Bus protocol. D-Bus is heavily used for inter-application IPC on Free and open-source desktop platforms, such as Linux, OpenSolaris, and FreeBSD. These libraries allow applications written in Haskell to inter-operate with other components of recent GNOME, KDE, and XFCE desktops. Singapore Functional Programmer Group First Meetup. Kenny Lu [7]announced (with apologies for the late notice) an informal meeting for the Functional Programmer Group in Singapore on 2 Nov 2009. The theme for the first meeting will be 'meet and greet'. GeBoP 1.7. Henk-Jan van Tuyl [8]updated and cabalized GeBoP (the General Boardgames Player) and uploaded it to hackage. GPS package on Hackage. Thomas DuBuisson [9]announced that he fixed up the GPS package to add correct distance calculation and a separate module for exporting KML. GPipe-TextureLoad 1.0.0 and GPipe 1.0.3. Tobias Bexelius [10]announced a new version of GPipe as well as a utility package for loading textures. HoleyMonoid-0.1. Martijn van Steenbergen [11]announced announce the first release of HoleyMonoid, a datatype that helps you build monoids with holes in them. The holes are filled in later using normal function application. GlomeVec, IcoGrid. Jim Snow [12]announced a couple of packages, GlomeVec is a vector library used in Jim's ray-tracer, and IcoGrid is a library for dealing with grids of hexagons and pentagons wrapped on a sphere. attempt-0.0.0. Michael Snoyman [13]announced a new package for exceptions haskell-mode 2.5. Svein Ove Aas [14]announced a new version of haskell-mode for that other 'editor'... Discussion Applicative but not Monad. Yusaku Hashimoto [15]asked about an example of a datatype that was an instance of Applicative, but not an instance of Monad. AND/OR Perceptron. Hector Guilarte [16]asked about how to understand a particular portion of JP Moresmau's [17]Perceptron in Haskell What is the current state of affairs with supercompilation? Eugene Kirpichov [18]asked about supercompilation in Haskell. Blog noise [19]Haskell news from the [20]blogosphere. Blog posts from people new to the Haskell community are marked with >>>, be sure to welcome them! * Magnus Therning: [21]Playing with sockets in Haskell. * Holumbus: [22]Switched to Git. * Manuel M T Chakravarty: [23]Finally found the ghci bug on Snow Leopard. * Galois, Inc: [24]Tech Talk: Testing First-Order-Logic Axioms in AutoCert. * Brent Yorgey: [25]Collecting Attributes. * Darcs: [26]darcs weekly news #44. * FP Lunch: [27]Parser Combinators are as expressive as possible. * David Amos: [28]Simple groups, the atoms of symmetry. * Xmonad: [29]xmonad 0.9 available now!. * Michael Snoyman: [30]Introduction to attempt error reporting library. * FP-Syd: [31]Sydney FP Group: FP-Syd #20.. Quotes of the Week * hexpuem: [on learning haskell] the best way is to shove a SD card up your nose with learn yourself a haskell good on it * copumpkin: copumpkin: 'YOU ARE SUCH A PULLBACK' copumpkin: 'YOU KNOW WHAT? I FUNCTORED YOUR MOTHER LAST NIGHT' * saml and mauke: saml: 'How can I convert python file to haskell?' mauke: 'By piping it through a programmer' * monochrom: premature generality is the root of OOP * EvilTerran: {-# LANGUAGE FlexibleMorals #-} -- needed for unsafeLaunchMissiles * Warrigal: Hey, the module loaded. I didn't expect that. * lilac: class Monad m where return and Kleisli compose must form a monoid About the Haskell Weekly News New editions are posted to [32]the Haskell mailing list as well as to [33]the Haskell Sequence and [34]Planet Haskell. [35]RSS is also available, and headlines appear on [36]haskell.org. To help create new editions of this newsletter, please see the information on [37]how to contribute. Send stories to jfredett . at . gmail . dot . com. The darcs repository is available at darcs get [38]http://patch-tag.com/r/jfredett/HWN2/pullrepo HWN2 . References 1. http://haskell.org/ 2. http://uncyclopedia.wikia.com/wiki/Haskell 3. http://www.reddit.com/r/haskell/comments/9yt9m/haskell_is_an_obscure_and_mostly_disused_esoteric/ 4. http://article.gmane.org/gmane.comp.lang.haskell.cafe/65286 5. http://article.gmane.org/gmane.comp.lang.haskell.general/17596 6. http://article.gmane.org/gmane.comp.lang.haskell.cafe/65436 7. http://article.gmane.org/gmane.comp.lang.haskell.cafe/65406 8. http://article.gmane.org/gmane.comp.lang.haskell.cafe/65384 9. http://article.gmane.org/gmane.comp.lang.haskell.cafe/65326 10. http://article.gmane.org/gmane.comp.lang.haskell.cafe/65320 11. http://article.gmane.org/gmane.comp.lang.haskell.cafe/65311 12. http://article.gmane.org/gmane.comp.lang.haskell.cafe/65294 13. http://article.gmane.org/gmane.comp.lang.haskell.cafe/65281 14. http://article.gmane.org/gmane.comp.lang.haskell.cafe/65268 15. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/65418 16. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/65393 17. http://jpmoresmau.blogspot.com/2007/05/perceptron-in-haskell.html 18. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/65227 19. http://planet.haskell.org/ 20. http://haskell.org/haskellwiki/Blog_articles 21. http://therning.org/magnus/archives/778 22. http://holumbus.fh-wedel.de/blog/?p=25 23. http://justtesting.org/post/227629236 24. http://www.galois.com/blog/2009/10/28/ahn-autocert/ 25. http://byorgey.wordpress.com/2009/10/28/collecting-attributes/ 26. http://blog.darcs.net/2009/10/darcs-weekly-news-44.html 27. http://sneezy.cs.nott.ac.uk/fplunch/weblog/?p=271 28. http://haskellformaths.blogspot.com/2009/10/simple-groups-atoms-of-symmetry.html 29. http://xmonad.wordpress.com/2009/10/26/xmonad-0-9-available-now/ 30. http://blog.snoyman.com/2009/10/25/introduction-to-attempt-error-reporting-library/ 31. http://www.mega-nerd.com/erikd/Blog/FP-Syd/fp-syd-20.html 32. http://www.haskell.org/mailman/listinfo/haskell 33. http://sequence.complete.org/ 34. http://planet.haskell.org/ 35. http://sequence.complete.org/node/feed 36. http://haskell.org/ 37. http://haskell.org/haskellwiki/HWN 38. http://patch-tag.com/r/jfredett/HWN2/pullrepo%20HWN2