General News

Haskell Weekly News: March 21, 2008

Submitted by byorgey on Sat, 03/21/2009 - 8:04am.
Haskell Weekly News: March 21, 2009

Welcome to issue 110 of HWN, a newsletter covering developments in the Haskell community.

Facebook apps with Happstack, Sudoku with Cryptol, what next? Tic-tac-toe with darcs? Anyway, lots of neat stuff this week, including new releases of GHC, jhc, and the Monad.Reader, some fun visualizations, and more. Also, students: apply to work on a Haskell project for the Google Summer of Code!

Announcements

GHC 6.10.2 Release Candidate 1. Ian Lynagh announced the first release candidate for GHC 6.10.2. Please test as much as possible; bugs are much cheaper if we find them before the release!

jhc 0.6.0 Haskell Compiler. John Meacham announced the release of jhc 0.6.0.

Safe Lazy IO in Haskell. Nicolas Pouillard announced the safe-lazy-io package that provides special types and combinators for performing safe lazy I/O.

game-tree - a library for searching game trees. Colin Paul Adams announced game-tree 0.1.0.0, which provides a class for dynamic game trees, and purely functional algorithms for searching them.

random-shuffle package. Manlio Perillo announced the availability of the random-shuffle package, which is based on Oleg's description.

random-stream package. Manlio Perillo announced the random-stream package, which provides a portable interface for the operating system source of pseudo random data. Supported sources are Unix /dev/urandom, Win32 CryptGenRandom and OpenSSL pseudo random numbers generator.

language-python. Bernie Pope announced the language-python package, which provides a parser (and lexer) for Python, written in Haskell. Currently it only supports version 3 of Python (the most recent version), but it will support version 2 in the future.

Google Summer of Code. Malcolm Wallace announced that haskell.org has once again been accepted as a mentoring organisation for the 2009 Google Summer of Code. Student applications open on Monday (23rd March) at 1900 UTC, for a period of 12 days (until Fri 3rd April, also at 1900 UTC). Students applicants are encouraged to interact with the community via mailing lists, prior, during, and after the submission of their ideas for projects. Because (sadly) the darcs community did not get accepted as a separate organisation this year, haskell.org will be willing to accept proposals relating to darcs.

regex-tdfa-1.1.0. ChrisK announced the release of regex-tdfa-1.1.0. This version is a small performance update to the old regex-tdfa-1.0.0 version. Previously all text (e.g. ByteString) being search was converted to String and sent through a single engine; the new version uses a type class and SPECIALIZE pragmas to avoid converting to String. This should make adding support for searching other Char containers easy to do.

Haskell on your system? Information wanted!. Don Stewart announced that haskell.org now features links to wiki pages explaining how to obtain Haskell on windows, mac osx and linux and bsd. If you're a distro maintainer for these systems, please consider adding relevant pointers to the pages, so that users of these systems can find all the info they need.

libffi 0.1 released. Remi Turk announced the release of libffi 0.1, bindings to the C library libffi, allowing C functions to be called whose types are not known before run-time.

Haskell Logo Voting has started!. Eelco Lempsink announced that voting has begun to choose the new Haskell logo. All subscribed to haskell-cafe should have received a ballot; if you are not directly subscribed, you can still send ballot requests until the end of the competition (March 24, 12:00 UTC). Make sure the message contains 'haskell logo voting ballot request' in the subject. A long discussion of what color to paint the bike shed and why this particular bike shed will not do for storing bikes ensued.

The Monad.Reader (13). Wouter Swierstra announced that a new issue of The Monad.Reader, a quarterly magazine about functional programming, is now available. Issue 13 consists of the following four articles: "Rapid Prototyping in TEX" by Stephen Hicks; "The Typeclassopedia" by Brent Yorgey; a Real World Haskell book review by Chris Eidhof and Eelco Lempsink; and "Calculating Monads with Category Theory" by Derek Elkins.

dzen-utils 0.1. Felipe Lessa announced the release of dzen-utils 0.1, which contains various utilities for creating dzen input strings in a type-safe way using some combinators, including the ability to apply colors locally (instead of applying for everything beyond some point). It can also emulate dbar and gdbar, do automatic padding, and more.

Discussion

transformers versus mtl. Ganesh Sittampalam began a discussion on the relative status of the 'transformers' and 'mtl' packages.

least fixed points above something. Jens Blanck asked about a function to compute fixed points starting from a seed value (as opposed to computing the least defined fixed point).

Type equality proof. Martijn van Steenbergen requested feedback on a proposed module collecting utilities for working with type equality proofs.

What unsafeInterleaveIO is unsafe. Yusaku Hashimoto began a discussion by asking why unsafeInterleaveIO is considered unsafe, or under what circumstances its use can be considered safe.

Jobs

How do students learn Haskell? Postgraduate project at University of Kent. S.J.Thompson announced that funding is available for a postgraduate project to study how students learn Haskell, based on the wealth of data collected through the instrumented version of the Helium system for Haskell. The project will be supervised by Simon Thompson and Sally Fincher, in collaboration with Jurriaan Hage, Utrecht University.

Blog noise

Haskell news from the blogosphere.

Quotes of the Week

  • ray: three dimensional zippers make my scalp hurt when i get my hair caught in them
  • dolio: [regarding a paypal spam message on #haskell] Take that, Harrop! Does OCaml have illegal cracking utilities?
  • lament: I think I speak for everyone in this channel when I say haskell is absolutely horrible and nobody would ever want to use it
  • MiguelMitrofanov: The first glimpse of this [logo] vote scared me so much that I've closed the page, stopped the browser, and shut my computer down.
  • osfameron: <ImInYourMonad> can I store gtk2hs-Buttons in a datastructure? <osfameron> ImInYourMonad: I think you have to sew them on with gtk2hs-Thread
  • chrisdone: I think you mean Peyton `Simon` Jones.

About the Haskell Weekly News

New editions are posted to the Haskell mailing list as well as to the Haskell Sequence and Planet Haskell. RSS is also available, and headlines appear on haskell.org.

To help create new editions of this newsletter, please see the information on how to contribute. Send stories to byorgey at cis dot upenn dot edu. The darcs repository is available at darcs get http://code.haskell.org/~byorgey/code/hwn/ .

Haskell Weekly News: March 14, 2009

Submitted by byorgey on Sat, 03/14/2009 - 8:01am.
Haskell Weekly News: March 14, 2009

Welcome to issue 109 of HWN, a newsletter covering developments in the Haskell community.

Congratulations to the authors of RWH on their Jolt award! Some cool libraries released this week (as usual), and some really cool PhD opportunities at Strathclyde. Also, it seems that I was censured last week for not including any quotes in the HWN, which is because tunes.org (which hosts the #haskell logs) was down while I was putting it together. So, this time I've included quotes going back two weeks, I HOPE YOU'RE HAPPY

Community News

Tom DuBuisson (TomMD) has moved to Portland and will be starting a PhD at Portland State soon.

Announcements

darcs fundraising drive - only $720 left to go!. Eric Kow announced that donations are still being accepted to help pay for travel to the upcoming Haskell hackathon. So far we have raised $280, so we're almost a third of the way there. Think you can help?

Vintage BASIC 1.0. Lyle Kopnicky announced the initial release of Vintage BASIC, an interpreter for microcomputer-era BASIC. Fully unit-tested, it faithfully implements the common elements of the language. On the web site, you can find 102 games from the classic book BASIC Computer Games, all of which run flawlessly. Have fun!

ThreadScope: Request for features for the performance tuning of parallel and concurrent Haskell programs. Satnam Singh requested feedback on infrastructure for logging run-time events and a graphical viewer program called ThreadScope. The goal is for these features to make it into the next release of GHC.

torch-0.1. Yusaku Hashimoto announced a new unit test framework, torch-0.1.

sparsebit 0.5 - Sparse Bitmaps for Pattern Match Coverage. Ki Yung Ahn announced the release of the sparsebit library. This library packages the functional peal paper Sparse Bitmaps for Pattern Match Coverage submitted to ICFP 2009 by Ki Yung Ahn and Tim Sheard.

happs-tutorial 0.8. Crieghton Hogg announced the release of happs-tutorial 0.8, which is compatible with happstack-0.2. A number of changes have occurred in this release, including general code cleanup, migration to the new Happstack.Server.SimpleHTTP API, and more.

Future 1.1.0 concurrency library. ChrisK announced the future package, which ought to do what C++ standard futures/promises do, plus a bit more. The main operation is forkPromise :: IO a -> IO (Promise a), which sets the "IO a" operation running in a fresh thread; the eventual result can be accessed in many ways (non-blocking, blocking, blocking with timeout).

Holumbus-MapReduce 0.0.1. Stefan Schmidt announced three new libraries: Holumbus-MapReduce, Holumbus-Distribution, and Holumbus-Storage, which provide tools for building distributed systems. These libraries are used as the backbone of the Holumbus search engine.

Turbinado V0.6. Alson Kemp announced the release of Turbinado 0.6, a Rails-ish Model-View-Controller web serving framework for Haskell. New features include support for CGI serving, statically compiled Layouts, Views, and Controllers, lower case paths, support for cookies and encrypted cookie sessions, easier installation, and support for GHC 6.10.

iteratee-0.1.0. John Lato announced the hackage release of iteratee-0.1.0. This library implements enumerators and iteratees as proposed by Oleg Kiselyov.

Harpy 0.4.4 - Runtime code generation for x86 machine code. Dirk Kleeblatt announced the release of Harpy 0.4.1, a library for runtime code generation for x86 machine code. The new release features additional Eq instances, support for new prefetching instructions, and some bug fixes.

Discussion

Suggestion for a Haskell mascot. Maurí­cio suggested using a sloth as the Haskell mascot. If you would like to know how to say 'sloth' in just about every language ever, read this thread.

Jobs

Microsoft PhD Scholarship at Strathclyde. Conor McBride announced another PhD opportunity at Strathclyde, sponsored by Microsoft Research, to investigate the practical and theoretical impact of extending Haskell's type system with numeric expressions (representing sizes, or ranges, or costs, for example) and constraints capturing richer safety properties than are currently managed by static typing.

Blog noise

Haskell news from the blogosphere.

Quotes of the Week

  • mmorrow: when i first saw haskell i was like "holy shitfork! that's what i've been trying to do in C for forever!"
  • pastah: the maybe monad is like cheating. everything is so awesomelly easy.
  • wli: Monads are like constipation. Comonads are like Ex-Lax.
  • TomMD: Never trust IO.
  • Axman6: let blah f x = f (blah f x) in blah ("blah "++) ""
  • MyCatVerbs: Lazy IO is implemented in terms of unsafePerformIO, you, you, you silly bipedal carbon-based organism.
  • MyCatVerbs: Amdahl's law is mostly to be used for making people feel depressed.
  • Axman6: -ddump-occur-anal <- another terrible name...
  • AchimSchneider: Finite automata don't go bottom in any case, at least not if you don't happen to shoot them and their health drops below zero.
  • ski: the truth (semantics), the whole truth (completeness), and nothing but the truth (soundness)
  • f4hy: wait you can do a show on an infinite list?! (I am starting to think haskell is not a programming language, it is evil wizardry)
  • Baughn: concat $ forM [(1,2), (4,5)] $ \(a,b) -> show (b,a+b)

About the Haskell Weekly News

New editions are posted to the Haskell mailing list as well as to the Haskell Sequence and Planet Haskell. RSS is also available, and headlines appear on haskell.org.

To help create new editions of this newsletter, please see the information on how to contribute. Send stories to byorgey at cis dot upenn dot edu. The darcs repository is available at darcs get http://code.haskell.org/~byorgey/code/hwn/ .

Haskell Weekly News: March 7, 2009

Submitted by byorgey on Sat, 03/07/2009 - 5:20pm.
Haskell Weekly News: March 07, 2009

Welcome to issue 108 of HWN, a newsletter covering developments in the Haskell community.

The ICFP programming contest will be held from 26-29th June! It's not too early to start thinking about putting a team together.

Announcements

tar 0.3.0.0. Duncan Coutts announceda major new release of the tar package for handling ".tar" archive files. This release has a completely new and much improved API.

storable 0.1 -- Storable type class for variable-sized data. Tomáš Janoušek announced the first release of the storable library, which fills the gap between Foreign.Storable and Data.Binary by adding support for marshalling (finite) values of variable-sized data types, like lists or trees, while preserving the performance and memory efficiency one expects from the Storable class. It also provides a (monadic) syntactic sugar that takes care of alignment restrictions by itself and makes instance deriving easy.

CFP: Submit a talk proposal to CUFP. Kathleen Fisher requested talk proposals for CUFP.

The Industrial Haskell Group. Duncan Coutts announced the creation of the Industrial Haskell Group (IHG). The IHG is an organisation to support the needs of commercial users of the Haskell programming language. Currently, the main activity of the IHG is a collaborative development scheme, in which multiple companies fund work on the Haskell development platform to their mutual benefit. The scheme has started with three partners of the IHG, including Galois and Amgen.

pandoc 1.2. John MacFarlane announced the release of pandoc version 1.2. The most significant new feature is support for literate Haskell; you can now use pandoc directly on literate Haskell source files to produce syntax-highlighted HTML output.

A Haskell binding for the Augeas API. Jude announced a Haskell FFI binding for the Augeas configuration editing API.

Haskell Logo Voting will start soon!. Eelco Lempsink announced that voting for the new Haskell logo will begin on March 16! Everyone subscribed to haskell-cafe will receive a ballot; if you are not subscribed but would like to vote, email Eelco with the subject "haskell logo voting ballot request" and include a short, unique message.

Happstack 0.2 Released. Matthew Elder announced the release of Happstack 0.2.

Extensible and Modular Generics for the Masses: emgm-0.3. Sean Leather announced the third major release of Extensible and Modular Generics for the Masses (EMGM), a library for generic programming in Haskell using type classes and a sum-of-products view. Deriving is now greatly improved, and there are several new functions, including case, everywhere, and everywhere'.

major speed improvement: regex-tdfa reaches 1.0.0. ChrisK proudly announced the version 1.0.0 release of regex-tdfa. This is is not just a bug fix release; it is a serious improvement in the asymptotic running time of the library algorithms.

Discussion

Definitions of purity and Lazy IO. Oleg began a discussion on lazy IO.

Left fold enumerator - a real pearl overlooked?. Günther Schmidt began a discussion of left-fold enumerators and their current status within the community.

Jobs

Looking for a co-founder for a startup using Haskell. Ed McCaffrey is looking for a co-founder to work on a startup music project in Haskell. Email Ed for more information.

Fully-funded doctoral studentships in dependently type programming at Oxford and Strathclyde. Jeremy Gibbons announced two fully-funded doctoral student positions in dependently-typed programming at Oxford and Strathclyde.

Blog noise

Haskell news from the blogosphere.

About the Haskell Weekly News

New editions are posted to the Haskell mailing list as well as to the Haskell Sequence and Planet Haskell. RSS is also available, and headlines appear on haskell.org.

To help create new editions of this newsletter, please see the information on how to contribute. Send stories to byorgey at cis dot upenn dot edu. The darcs repository is available at darcs get http://code.haskell.org/~byorgey/code/hwn/ .

Haskell Weekly News: February 28, 2009

Submitted by byorgey on Sat, 02/28/2009 - 11:42am.
Haskell Weekly News: February 28, 2009

Welcome to issue 107 of HWN, a newsletter covering developments in the Haskell community.

Announcements

Google Summer of Code 2009 - mentors wanted!. Eric Kow reminded everyone that darcs will be applying to be a mentoring organisation for the Google Summer of Code project 2009, and is seeking people to serve as mentors. You need not be a darcs expert to serve as a mentor!

c2hs 0.16.0. Duncan Coutts announced the release of c2hs version 0.16.0, a tool which assists in the development of Haskell bindings to C libraries by extracts interface information from C header files and generating Haskell code with foreign imports and marshaling. The major change in this release is that it now uses the Language.C library.

X Haskell Bindings 0.2. Antoine Latter announced the 0.2.* series release of the X Haskell Bindings, mostly aimed at making the API prettier. The goal of XHB is to provide a Haskell implementation of the X11 wire protocol, similar in spirit to the X protocol C-language Binding (XCB).

text and text-icu, fast and comprehensive Unicode support using stream fusion. Bryan O'Sullivan , on behalf of the Data.Text team, announced the release of preview versions of two new packages: text 0.1, providing fast, packed Unicode text support with modern stream fusion, and text-icu 0.1, which augments text with comprehensive character set conversion support and normalization (and soon more), via bindings to the ICU library.

Boston Area Haskell User's Group, first meeting on Saturday February 28th. Shae Matijs Erisson announced the first meeting of the Boston Area Haskell User's Group this Saturday, February 28, at 2pm. Directions are on the web page; you can also check out the mailing list.

New version of Hieroglyph released: Hieroglyph 1.1 is on hackage. Jeff Heard announced the release of a new version of Hieroglyph; the biggest change is that it now uses Russell O'Connor's excellent Data.Colour library.

bug fix for regex-tdfa, version 0.97.4 (and "regex-ast"). ChrisK announced another bug fix release for the regex-tdfa package, which fixes another tricksy bug. This is now the only known regex library that passes the entire test suite.

Hac5: April 17-19, Utrecht -- Book Now!. Sean Leather announced some updated information regarding the 5th Haskell Hackathon. The executive summary: hotel or hostel accommodation may be hard to come by, so book your room now, and check out the website for lots of useful information.

pkgenv - disposable, isolated pkg environments. Paolo Losi announced a tool, pkgenv, which facilitates setting up isolated, disposable package environments.

Blog noise

Haskell news from the blogosphere.

Quotes of the Week

  • lilac: haskell's learning curve is like this: |
  • cowardlydragon: [from a reddit comment thread] Don't get me started on monad. What is that, a man with a single testicle?

About the Haskell Weekly News

New editions are posted to the Haskell mailing list as well as to the Haskell Sequence and Planet Haskell. RSS is also available, and headlines appear on haskell.org.

To help create new editions of this newsletter, please see the information on how to contribute. Send stories to byorgey at cis dot upenn dot edu. The darcs repository is available at darcs get http://code.haskell.org/~byorgey/code/hwn/ .

Haskell Weekly News: February 21, 2009

Submitted by byorgey on Sat, 02/21/2009 - 11:12am.
Haskell Weekly News: February 21, 2009

Welcome to issue 106 of HWN, a newsletter covering developments in the Haskell community.

Announcements

HWEB. Eric Macaulay, following a little prodding by Neil Mitchell, has released version 0 of HWEB, a small tool for producing literate Haskell programs.

Cabal-1.6.0.2 and cabal-install-0.6.2. Duncan Coutts announced point-releases of the Cabal library and the cabal-install command line tool. These releases include a number of fixes and minor improvements, and are expected to be included with ghc-6.10.2.

Barrie 0.3.1. Fraser Wilson announced a hackage release of Barrie, an implementation of an idea for supporting state based, user-driven GUIs.

Yogurt-0.3. Martijn van Steenbergen announced the release of Yogurt-0.3, a MUD client library for Haskell. This version improves over 0.2 in several ways, including support for GHC 6.10, no more unsafeCoerce needed, new support for forking threads, and various refactorings.

wxFruit-0.1.2. Henk-Jan van Tuyl announced an update of wxFruit, a graphical user interface that combines some of the power and versatility of wxHaskell with the elegance and simplicity of Fruit. The new version works with GHC 6.10, and also includes a demo game, PaddleBall. Interested parties, take note: the position of developer/maintainer for this library is currently open.

Paper draft: "Denotational design with type class morphisms". Conal Elliott announced a draft of a new paper, "Denotational design with type class morphisms". Feedback is appreciated, especially if in time for the March 2 ICFP deadline.

Crypto 4.2.0 & Related News. Creighton Hogg announced the release of version 4.2.0 of the Crypto library. Creighton will also betaking over maintenance of the library from Dominic Steinitz.

The Typeclassopedia, and request for feedback. Brent Yorgey announced a first draft of an article entitled 'The Typeclassopedia', a "starting point for the student of Haskell wishing to gain a firm grasp of its standard type classes." Comments and feedback are encouraged!

hslibsvm-2.88.0.1 - A FFI binding to LibSVM. S. Guenther announced the hlibsvm package, a set of Haskell bindings to the C++ libsvm library.

spacepart-0.1.0.0 (was called data-spacepart). Corey O'Connor announced a new release of the spacepart package, supporting space-partitioning data structures. The new release includes many bug fixes and some code cleanup.

pqueue-mtl, stateful-mtl. Louis Wasserman announced two new packages, stateful-mtl and pqueue-mtl. stateful-mtl provides an ST monad transformer, several useful operations on generic monad transformers, and a monad transformer intended to cleanly externally wrap operations on a mutable array (including resizing operations). pqueue-mtl provides implementations of several structures supporting a generic 'single-in, single-out' paradigm (encapsulated in a typeclass named Queuelike), including stacks, queues, and several implementations of priority queues.

haha-0.1 - Animated ascii lambda. Sebastiaan Visser announced haha, a very minimal vector based ascii art library written just for fun. If you've always wanted to have a full-color rotating vector based ascii art lambda on your terminal, now is your chance!

Discussion

Darcs and Google Summer of Code. Eric Kow floated the idea of having darcs apply to the Google Summer of Code as a separate mentoring organization, and discussed several ideas for student projects.

Jobs

Postdoctoral Research Position at Yale University. Paul Hudak announced the availability of a postdoctoral research position at Yale University. The successful candidate will apply modern, high-level programming language ideas (such as embodied in Haskell) to help design and implement a language for the control of BGP-based network routers, with the goal of realizing high-level networking protocols for traffic engineering, security, and related networking concerns.

Blog noise

Haskell news from the blogosphere.

Quotes of the Week

  • KetilMalde: No, those are quite outdated by now. The new horsemen of the programming apocalypse are, of course, IO, MutableState, LazyMemoryLeak, and Bottom.
  • skorpan: i love the layout of lyah. makes me feel like having some chunky bacon.
  • lilac: * lilac looks forward to Cale explaining category theory by analogy to Call of Duty
  • byorgey: _|_ ... is a party pooper
  • idnar: enlarge your context in just seven days with all-natural herbal supplements!
  • mmorrow: gah, i'm so used to haskell i forgot a return stmt in C and was trying to figure out where the segfault was happening for 20 minutes

About the Haskell Weekly News

New editions are posted to the Haskell mailing list as well as to the Haskell Sequence and Planet Haskell. RSS is also available, and headlines appear on haskell.org.

To help create new editions of this newsletter, please see the information on how to contribute. Send stories to byorgey at cis dot upenn dot edu. The darcs repository is available at darcs get http://code.haskell.org/~byorgey/code/hwn/ .

Haskell Weekly News: February 17, 2009

Submitted by byorgey on Tue, 02/17/2009 - 10:28am.
Haskell Weekly News: February 17, 2009

Welcome to issue 105 of HWN, a newsletter covering developments in the Haskell community.

And here's the Belated Valentine's Day HWN! Motto: "Remembering that you love someone three days after you were supposed to is better than not remembering at all." Of course, it's late because I spent the weekend working on the Typeclassopedia (although you won't find a link to it in this HWN because I've only included things through Saturday). Much Haskell love to all!

Announcements

Plans for GHC 6.10.2. Ian Lynagh announced a quick summary of the plans for GHC 6.10.2. If there is a bug not on the high-priority list that is causing you major problems, please let the developers know. A release candidate is expected to be ready by the end of the week.

Bug fix to regex-tdfa, new version 0.97.3. ChrisK announced a new release of regex-tdfa which fixes some additional bugs. Three Cheers For QuickCheck!

Google Summer of Code 2009. Malcolm Wallace announced that haskell.org will once again be applying to be a Google Summer of Code mentor organization. Now is the time to begin discussing ideas for student projects. Also, if you wish to help publicize GSoC amongst students, there are official posters/fliers available. A long discussion of various project ideas followed, including some analysis of the factors which contribute to project success.

happs-tutorial 0.7. Creighton Hogg announced the release of happs-tutorial 0.7, the first release of happs-tutorial built against the new Happstack project. Creighton has now taken over development of the tutorial from Thomas Hartman.

first Grapefruit release. Wolfgang Jeltsch announced the first official release of Grapefruit, a library for Functional Reactive Programming (FRP) with a focus on user interfaces. With Grapefruit, you can implement reactive and interactive systems in a declarative style. User interfaces are described as networks of communicating widgets and windows. Communication is done via different kinds of signals which describe temporal behavior.

CFP: 5th Haskell Hackathon, April 17-19, Utrecht. Sean Leather issued a call for participation in the 5th Haskell Hackathon, which will be held in Utrecht, The Netherlands, from 17-19 April. The Haskell Hackathon is a collaborative coding festival with a simple focus: build and improve Haskell libraries, tools, and infrastructure. All are welcome! See the website for more information, or join the IRC channel (#haskell-hac5). Please register if you plan to attend!

Take a break: write an essay for Onward! Essays. Simon Peyton-Jones announced a call for submissions to Onward! Essays. An Onward! essay is a thoughtful reflection upon software-related technology. Its goal is to help the reader to share a new insight, engage with an argument, or wrestle with a dilemma. The deadline is 20 April.

Data.Stream 0.3. Wouter Swierstra announced a new version of the Data.Stream package, a modest library for manipulating infinite lists. Changes include support for lazy SmallCheck, an improved Show instance, stricter scans, various documentation fixes, and several new functions from Data.List.

X Haskell Bindings 0.1. Antoine Latter announced a new release of the X Haskell Bindings (XHB) library. The goal of XHB is to provide a Haskell implementation of the X11 wire protocol, similar in spirit to the X protocol C-language Binding (XCB).

Gtk2HS 0.10.0 released. Peter Gavin announced a new release of Gtk2HS, the Haskell GTK bindings. Notable changes include support for GHC 6.10, bindings to GIO and GtkSourceView-2.0, a full switch to the new model-view implementation using a Haskell model, and many others.

Discussion

Haskell.org GSoC. Daniel Kraft began a discussion about good topics for a Haskell GSoC project.

Painting logs to get a coloured tree. Joachim Breitner asked about elegant ways to annotate trees, leading to an interesting discussion.

Blog noise

Haskell news from the blogosphere.

Quotes of the Week

  • chrisdone: zipWith3 ($) (cycle [const,flip const]) "hai! haha!" "yarlysotense!"
  • quicksilver: I'm very unlikely to give the time of day to anything which doesn't let me continue to use emacs.
  • roconnor: don't let Float do your finance homework for you.
  • quicksilver: @go is made of STRING and FAIL.
  • drhodes: We're sorry Mr. Thunk, but this program is on a need to run basis, and you don't need to run. Now go away before I call the garbage collector.

About the Haskell Weekly News

New editions are posted to the Haskell mailing list as well as to the Haskell Sequence and Planet Haskell. RSS is also available, and headlines appear on haskell.org.

To help create new editions of this newsletter, please see the information on how to contribute. Send stories to byorgey at cis dot upenn dot edu. The darcs repository is available at darcs get http://code.haskell.org/~byorgey/code/hwn/ .

Haskell Weekly News: February 7, 2009

Submitted by byorgey on Sat, 02/07/2009 - 1:13pm.
Haskell Weekly News: February 07, 2009

Welcome to issue 104 of HWN, a newsletter covering developments in the Haskell community.

Community News

Andre Pang (ozone) will be soon moving to San Fransisco to begin work with Pixar!

Announcements

Mutually recursive modules. Henning Thielemann announced a small writeup explaining how mutually recursive modules are currently supported, and how they can be avoided. Please add information about other compilers and more ideas on breaking cycles.

UrlDisp, a friendly URL dispatching library. Artyom Shalkhakov announced the first release of UrlDisp, a small library for URL dispatching (aka routing). Right now it works with CGI, and should be compatible with FastCGI as well (not tested); Happstack compatibility is planned. Documentation and usage examples are available.

Purely functional LU decomposition. Rafael Gustavo da Cunha Pereira Pinto released some code to perform purely functional LU decomposition.

Ready for testing: Unicode support for Handle I/O. Simon Marlow announced that proper Unicode support in Handle I/O is ready for testing in GHC. Just download the set of patches, compile GHC with them, and test away! Comments and discussion welcome.

HaskellWiki Accounts. Ashley Yakeley can create a HaskellWiki account for anyone who wants one (account creation has been disabled as a spam-fighting measure).

multiplicity 0.1.0 released. Dino Morelli announced the release of multiplicity 0.1.0, a configuration file driven wrapper around duplicity. It allows you to easily define backup sets as config files and avoid long, repetitive command lines.

Happstack 0.1 Released!. Matthew Elder announced the 0.1 release of Happstack, the successor for the HAppS project.

#haskell-in-depth IRC channel. Philippa Cowderoy announced the creation of a new IRC channel, #haskell-in-depth. The new channel is open to everyone, just like #haskell, but is intended for more in-depth conversations, to allow the #haskell channel to be a more newbie-friendly place.

regex-posix-unittest-1.0 AND regex-posix-0.94.1 AND regex-tdfa-0.97.1. ChrisK announced an update to the regex-posix package which provides better semantics for multiple matches; an update to the regex-tdfa package, which provides the same new multiple match semantics and fixes a bug; and finally, a new package, regex-posix-unittest, along with an accompanying wiki page; it runs a suite of unit tests which regex-tdfa passes, but reveals bugs in the standard glibc, OS X, FreeBSD, and NetBSD implementations!

Jane Street Summer Project 2009. Yaron Minsky announced the Jane Street Summer Project for 2009, the goal of which is to make functional programming languages into better practical tools for programming in the real world. Students will be funded over the summer to work on open-source projects which aim at improving the practical utility of their favorite functional language.

gitit 0.5.1. John MacFarlane announced the release of gitit 0.5.1, a wiki program that uses git or darcs as a filestore and HAppS as a server. Changes include major code reorganization, bug fixes, new debugging features, and more.

regex-xmlschema. Uwe Schmidt announced the release of regex-xmlschema, (yet another) package for processing text with regular expressions, containing a complete implementation of the W3C XML Schema specification language for regular expressions.

diagrams 0.2. Brent Yorgey announced version 0.2 of the diagrams package, an embedded domain-specific language for creating simple graphics in a compositional style. New features include support for arbitrary paths, text, multiple output formats, and support for the colour library.

Discussion

Haddock Markup. David Waern began a discussion on Haddock markup syntax: should it support (La)TeX for embedded mathematics? Should it support other stuff?

Elegant & powerful replacement for CSS. Conal Elliott began a discussion on an elegant replacement for CSS that is consistent, composable, orthogonal, functional, and based on an elegantly compelling semantic model---what might such a thing look like?

type metaphysics. Gregg Reynolds began a long and interesting discussion on the type system, denotational semantics, and related matters.

Jobs

Postdoc Positions at the CLIP group, Spain. CFP announced the availability of postdoctoral research positions within the CLIP (Computational Logic, Implementation and Parallelism) group in Madrid, Spain. The application deadlines are February 13th and 18th; see the original email for more details.

Multiple funded Ph.D. positions available. Martin Erwig announced the availability of multiple funded Ph.D. positions in the school of EECS at Oregon State University, in the areas of programming languages (focusing on DSLs and language design), software engineering, and HCI. If you are interested, email Martin with a resume and contact information by February 15.

Blog noise

Haskell news from the blogosphere.

Quotes of the Week

  • sigfpe: If I took some Ritalin, maybe I could write an entire book on Haskell and algebra.
  • cjb: It's all fun and games until somebody loses an IOVar.
  • Gracenotes: You are likely to be eaten by a poset
  • Gracenotes: A public service announcement: if you find yourself overusing the Writer monad, tell (Sum 1)
  • Anonymous: Haskell, the world's leading purely fictional programming language
  • ehird: 2009: The Year of the Combinatorial Explosion of Haskell Web Frameworks. Also, the Linux Desktop.
  • ehird: [on the previous quote] Someone re-remember that quote when lambdabot's back so I don't have to and thereby look egotistical, thanks
  • luqui: Hmph! My program which uses unsafeCoerce everywhere is not working properly! Who'd have thought...

About the Haskell Weekly News

New editions are posted to the Haskell mailing list as well as to the Haskell Sequence and Planet Haskell. RSS is also available, and headlines appear on haskell.org.

To help create new editions of this newsletter, please see the information on how to contribute. Send stories to byorgey at cis dot upenn dot edu. The darcs repository is available at darcs get http://code.haskell.org/~byorgey/code/hwn/ .

Haskell Weekly News: January 31, 2009

Submitted by byorgey on Sat, 01/31/2009 - 9:04am.
Haskell Weekly News: January 31, 2009

Welcome to issue 103 of HWN, a newsletter covering developments in the Haskell community.

Announcements

HDBC v2.0 now available. John Goerzen announced that HDBC v2.0 is now available. Simultaneously, HDBC-sqlite3, HDBC-postgresql, and HDBC-odbc v2.0 have also been uploaded to Hackage. A guide to new features and migration can be found here.

Extensible and Modular Generics for the Masses: emgm-0.2. Sean Leather announced the second major release of Extensible and Modular Generics for the Masses (EMGM), a library for generic programming in Haskell using type classes and a sum-of-products view. Improvements over emgm-0.1 include type representation derivation using Template Haskell, documentation improvements, a bimap function, and more.

incremental-sat-solver. Sebastian Fischer announced the incremental-sat-solver library, which provides an implementation of the Davis-Putnam-Logemann-Loveland algorithm for the Boolean satisfiability problem. It not only allows solving Boolean formulas in one go, but also adding constraints and query bindings of variables incrementally.

data-spacepart - space partitioning data structure[s] (initial release). Corey O'Connor announced the data-spacepart package, the goal of which is to be a collection of space partitioning data structures. Currently, there is only a simple quadtree implementation.

Wired 0.2. Emil Axelsson announced a new release of Wired. The most important news in this release is that it now contains a 45nm cell library, which means that you can use Wired to create and analyze modern VLSI designs today!

CFP Haskell Symposium 2009. Stephanie Weirich announced a call for papers for the 2009 Haskell Symposium in Edinburgh, Scotland. The deadline for submissions is May 8.

testpack (first release). John Goerzen announced the release of testpack, a collection of a few utilities for tests: some tools to convert QuickCheck properties into HUnit test cases, and various shortcuts and tools to increase verbosity while running tests in both QuickCheck and HUnit.

convertible (first release). John Goerzen announced a new package, convertible. At its heart, it's a very simple typeclass that's designed to enable a reasonable default conversion between two different types without having to remember a bunch of functions. The return type from this conversion is "Either ConvertError a", and conversions are expected to do sanity checking (such as bounds checking when converting to types like Int), so as to produce neither garbage nor exceptions as part of the conversion process. The package also includes instances of the Convertible typeclass for common type conversions. working with numeric types as well as dates and times. Notably, it has code to convert between System.Time types and their Data.Time siblings, and vice versa, a capability I found annoyingly lacking in the standard library.

Progress with IDE. Juergen Nicklisch-Franken announced that the Leksah 0.4.0 pre-release is now available. Current features include a Haskell customized editor with candy, project management support based on Cabal, a visual editor for Cabal files, navigation aids, a module browser, session support, and more.

Hayoo! beta 0.3. Timo B. announced the next beta version 0.3 of Hayoo!, the Haskell API search engine with find-as-you-type and suggestions. Hayoo! now works even if your browser does not support JavaScript.

DecisionTree 0.0. Adrian Neumann announced the DecisionTree package, which provides an implementation of the ID3 algorithm and can be used to classify data with discrete valued attributes.

orchid-0.0.7. Sebastiaan Visser announced a new release of Orchid, just another Haskell Wiki. This release features a number of improvements, including a filestore backend, searching, deleting and renaming support, and more. Check out the demo.

gitit 0.5. John MacFarlane announced the latest release of Gitit, the multitalented distributed wiki written in Haskell. This release uses the filestore library and hence also supports a darcs backend, and also features optimizations, better search, better diffs, and more. You can check out a running example.

filestore 0.1. Gwern Branwen announced filestore 0.1, which provides a uniform, abstract, generic interface for storing versioned files on disk. It allows calling programs to use generic commands to store strings or binary data and perform various queries, such as 'what files are in this repository?' or 'what were the contents of this file at revision XXXXXXX?' or 'give me a diff of this file between revision XXXXXXX and revision YYYYYYY.' Because the interface is abstract, the calling program is insulated from the messy details of the backend (which might be a VCS or a database). Darcs and Git are fully supported. There are plans for a SQLite backend.

Scurry :: A cross platform (if you put your mind to it) P2P VPN. John Van Enk announced the release of Scurry, a P2P VPN application written in Haskell (and a little C).

Discussion

Why binding to existing widget toolkits doesn't make any sense. Achim Schneider began an interesting discussion on the proper approach to GUI toolkits in Haskell.

Laws and partial values. Henning Thielemann began a long thread on the semantics of laws (such as the monoid laws).

Blog noise

Haskell news from the blogosphere.

Quotes of the Week

  • lilac: is happpy with his infinite type. it's ducks all the way across and down.
  • Gracenotes: You are likely to be eaten by a poset
  • RossMellgren: Apparently 64-bit GHC is sufficiently advanced to be indistinguishable from magic.
  • cjb: It's all fun and games until somebody loses an IOVar.
  • sigfpe: If I took some Ritalin, maybe I could write an entire book on Haskell and algebra.
  • ddarius: Nothing is evaluated until it is.

About the Haskell Weekly News

New editions are posted to the Haskell mailing list as well as to the Haskell Sequence and Planet Haskell. RSS is also available, and headlines appear on haskell.org.

To help create new editions of this newsletter, please see the information on how to contribute. Send stories to byorgey at cis dot upenn dot edu. The darcs repository is available at darcs get http://code.haskell.org/~byorgey/code/hwn/ .

Haskell Weekly News: January 24, 2009

Submitted by byorgey on Sat, 01/24/2009 - 10:04am.
Haskell Weekly News: January 24, 2009

Welcome to issue 102 of HWN, a newsletter covering developments in the Haskell community.

Announcements

Monoids and fingertrees. Heinrich Apfelmus posted a nice tutorial explaining the monoid magic behind 2-3 fingertrees.

STM-IO-Hooks-0.0.1. Peter Robinson announced the stm-io-hooks library, which provides an STM monad with commit and retry IO hooks. A retry-action is run (once) in a separate thread if the transaction retries, while commit-actions are executed iff the transaction commits. The code is based on the AdvSTM monad by Chris Kuklewicz, but in addition also ensures some atomicity guarantees for commit-actions.

1000 libraries. Don Stewart announced that Hackage has now reached 1000 packages!

HTTP-4000.0.4 released. Sigbjorn Finne announced that a new release of HTTP, version 4000.0.4, is now available. The main change is the addition of registering a Browser event handler for capturing state changes to the request-response processing pipeline.

Blog noise

Haskell news from the blogosphere.

Quotes of the Week

  • Jonathan Cast: [on advertising for Haskell programmers and informing them that the codebase is actually in Perl at the interview] <Andrew Wagner> That's......evil. <Jonathan> I know. I'm evil too, though. So it's cool.
  • rwbarton: A type class is not a type just like a dog house is not a dog.
  • SPJ: [This is] clearly not a bug in GHC; but it would be more felicitous if it gave you a warning...
  • Gracenotes: > let o_o = 0.0 ;o' =(, ); ;o (*)=(*) ;( lol, xD :p )= o' o' $o.o$ (:[]) $o.o$ (:[]) o_o in (:[]) o_o :p
  • Cale: I plan on forming a symbiotic relationship with sandtrout, which, as they merge with my body, will sustain me as I slowly turn into a sandworm, and make use of my billions of other memories and prescience to rule over everyone and everything for millenia.
  • quicksilver: or in Java, we'd make it more generic by using a PolynomialDivisionOperatorFactory.
  • roconnor: I was going to read about laziness, but I decided to do it later, when I need to understand it.

About the Haskell Weekly News

New editions are posted to the Haskell mailing list as well as to the Haskell Sequence and Planet Haskell. RSS is also available, and headlines appear on haskell.org.

To help create new editions of this newsletter, please see the information on how to contribute. Send stories to byorgey at cis dot upenn dot edu. The darcs repository is available at darcs get http://code.haskell.org/~byorgey/code/hwn/ .

Haskell Weekly News: January 19, 2009

Submitted by byorgey on Mon, 01/19/2009 - 2:43pm.
Haskell Weekly News: January 19, 2009

Welcome to issue 101 of HWN, a newsletter covering developments in the Haskell community.

Gee whiz, people, stop being so darn productive or you're going to burn me out. Seriously.

Announcements

curl-1.3.4. Sigbjorn Finne announced that a new version of curl, a complete Haskell binding to the libcurl API, is now available and have been uploaded to Hackage. The most notable change is the overloading of representation of response buffers (and headers), allowing for the use of ByteStrings.

Turbinado V0.4. Alson Kemp announced the release of version 0.4 of Turbinado, an easy to use Model-View-Controller-ish web framework for Haskell. Highlights for the 0.4 release include a dramatically improved ORM which handles foreign keys, and improved documentation.

Hackage about to reach 1000 releases. Don Stewart announced that Hackage is about to reach the 1000 release mark, 2 years after it went live. Some pretty charts can be seen here.

leapseconds-announced-2009. Bjorn Buckwalter announced the release of the leapseconds-announced package, which contains a single module and a single function implementing the Data.Time.Clock.TAI.LeapSecondTable interface.

zipper-0.1. Andres Loeh announced zipper-0.1, a library offering a generic zipper for systems of recursive datatypes.

multirec-0.2. Andres Loeh announced multirec-0.2, a library which provides a mechanism to talk about fixed points of systems of datatypes that may be mutually recursive. On top of these representations, generic functions such as the fold or the Zipper can then be defined.

ghci-haskeline 0.1. Judah Jacobson announced the first release of ghci-haskeline. This package uses the GHC API to reimplement ghci with the Haskeline library as a backend. Haskeline is a library for line input in command-line programs, similar to readline or editline, which is written in Haskell and thus (hopefully) more easily integrated into other Haskell programs.

The Monad.Reader (13) - Call for copy. Wouter Swierstra announced a Call for Copy for Issue 13 of The Monad.Reader. The submission deadline is February 13, 2009. Please get in touch with Wouter if you intend to submit something.

Cabal 2.0. Duncan Coutts announced that he has started a wiki page to collect ideas for Cabal 2. The basic idea for Cabal 2 is to learn lessons from our how the existing design has fared and how we can make a better design to tackle an expanded set of goals.

Announcing Haskell protocol-buffers 1.4.0 (the smashing recursive edition). Chris Kuklewicz announced version 1.4.0 (the smashing recursive edition) of protocol-buffers, a Haskell interface to Google's "..language-neutral, platform-neutral, extensible way of serializing structured data for use in communications protocols, data storage, and more."

Haskell WikiProject. Robin Green asked: is anyone else interested in forming a Haskell WikiProject on Wikipedia, to collaborate on improving and maintaining the coverage and quality of articles on Haskell-related software and topics (broadly defined)?

darcs 2.2.0. Petr Rockai announced the release of darcs 2.2.0, with both a source tarball and a cabalized tarball available. This version features many improvements and bug fixes; see Petr's original announcement for a list.

hledger 0.3. Simon Michael announced the release of hledger 0.3, a partial haskell clone of John Wiegley's "ledger" text-based accounting tool. It generates transaction and balance reports from a plain text ledger file, and demonstrates a functional implementation of ledger.

language-sh-0.0.3.1. Stephen Hicks announced the language-sh package, a set of modules for parsing, manipulating, and printing sh-style shell scripts. It's being developed alongside shsh, the Simple Haskell Shell.

Coadjute 0.0.1, generic build tool. Matti Niemenmaa announced version 0.0.1 of Coadjute, a generic build tool intended as an easier to use and more portable replacement for make.

dataenc 0.12. Magnus Therning announced version 0.12 of dataenc, a data encoding library currently providing Uuencode, Base64, Base64Url, Base32, Base32Hex, Base16, Base85, and (new in 0.12) yEncoding.

3 applications of "indexed composition" as a language design principle. Greg Meredith announced that he has found a way to generalize the LogicT transformer, and calculated it's application to three fairly interesting examples.

HTTPbis / HTTP-4000.x package available. Sigbjorn Finne announced the availability of a modernization of the venerable and trusted HTTP package. The headline new feature of this version is the parametrization of the representation of payloads in both HTTP requests and responses; two new representations are supported, strict and lazy ByteStrings.

monad-interleave 0.1. Patrick Perry announced the monad-interleave package, which provides a type class generalizing his two favorite functions in Haskell, "unsafeInterleaveIO" and "unsafeInterleaveST".

hs-dotnet, version 0.3.0. Sigbjorn Finne announced the first public release of hs-dotnet, a pragmatic take on interoperating between Haskell (via GHC) and .NET.

HEADS UP: finalizer changes coming in GHC 6.10.2. Simon Marlow announced that, by popular demand, GHC 6.10.2 will support finalizers that are actually guaranteed to run, and run promptly. However, there's a catch. If you want to know what the catch is, read his message.

split-0.1.1 (doc bugfix; new functions wordsBy and linesBy). Brent Yorgey announced version 0.1.1 of the split library. This version fixes some Haddock bugs, and adds two new convenience functions suggested by Neil Mitchell, wordsBy and linesBy.

json-0.4.1. Sigbjorn Finne announced a new release (0.4.1) of the json package. New in this release is a generic JSON encoder contributed by Lennart Augustsson along with a number of other, smaller changes.

haskell-platform mailing list. Duncan Coutts announced that anyone interested in helping out with the haskell platform project is invited to subscribe to the haskell-platform mailing list. This mailing list is for discussing practical stuff; policy questions will be discussed on the libraries mailing list.

bytestring-trie 0.1.4. wren ng thornton announced version 0.1.4 of the bytestring-trie package. This release fixes a number of bugs, adds functions such as keys, toListBy, fromList{L,R,S}, and separated Data.Trie (the main module for users) from Data.Trie.Internal (gritty details, and core implementation).

HLint 1.2. Neil Mitchell announced HLint version 1.2, a lint-like tool for Haskell that detects and suggests improvements for your code. The biggest new feature is list recursion suggestions.

Working with HLint from Emacs. Alex Ott announced an emacs module for integration with HLint.

Discussion

An Alternative Data.List.Zipper. Jeff Wheeler posted an improved version of Data.List.Zipper, and requested feedback or constructive criticism.

Comments from OCaml Hacker Brian Hurt. John Goerzen posted a link to a blog post by Brian Hurt, along with some thoughts about naming things in the standard libraries, spawning the longest ML thread in recent history.

Blog noise

Haskell news from the blogosphere.

Quotes of the Week

  • luqui: sigh: mathematicians. can't live with 'em, can't prove 'em wrong.
  • mauke: YO DAWG I HEARD YOU LIKE METACIRCULARITY SO WE PUT AN INTERPRETER IN YOUR INTERPRETER SO YOU CAN RUN CODE WHILE YOU RUN CODE
  • lament: tuples are proof that haskell is inherently broken and will never work.
  • roconnor: [after a long -cafe thread on the suckiness of using math terms in Haskell] we don't use Integer anymore. Too abstract. It is now called CountingThingy.
  • quicksilver: partially applied type synonym = type lambdas = unrestricted type functions = can of pants
  • ddarius: In the spirit of that article on monoids, we should drop the term "tree" and replace it with the term "free pointed magma"
  • ski_: unique among types, 'Void -> X' has its own charm. tourists should definitly pay a visit.
  • pao: Cale: thanks ... I really think you deserve a statue ... or, at least, a portrait in ascii art on haskell.org :-)
  • byorgey: TDD replaces a type checker in Ruby in the same way that a strong drink replaces sorrows.

About the Haskell Weekly News

New editions are posted to the Haskell mailing list as well as to the Haskell Sequence and Planet Haskell. RSS is also available, and headlines appear on haskell.org.

To help create new editions of this newsletter, please see the information on how to contribute. Send stories to byorgey at cis dot upenn dot edu. The darcs repository is available at darcs get http://code.haskell.org/~byorgey/code/hwn/ .