| Haskell Weekly News: July 03, 2006
user warning: UPDATE command denied to user 'drupalsequence'@'localhost' for table 'cache_filter'
query: UPDATE cache_filter SET data = 'Welcome to issue 39 of HWN, a weekly newsletter covering developments in the\nHaskell community. Each week, new editions are posted to <a\nhref=\"http://www.haskell.org/mailman/listinfo/haskell\">the Haskell mailing\nlist</a> as well as to <a href=\"http://sequence.complete.org/\">the Haskell\nSequence</a> and <a href=\"http://planet.haskell.org/\">Planet Haskell</a>. <a\nhref=\"http://sequence.complete.org/node/feed\">RSS</a> is also available, and\nheadlines appear on <a href=\"http://haskell.org\">haskell.org</a>. </p> <p> A\nweek of busy activity in the community. Thanks to Simon Marlow and Josef\nSvenningsson for contributions to this issue. </p> <h4> Announcements </h4>\n<ul> <li> <p> <em> HDBC 1.0 </em>. John Goerzen <a\nhref=http://article.gmane.org/gmane.comp.lang.haskell.general/13879>released</a>\nthe latest HDBC. HDBC is a database tool, modeled loosely on Perl\'s DBI\ninterface, though it has also been influenced by Python\'s DB-API v2, JDBC in\nJava, and HSQL in Haskell. You can find the code <a\nhref=http://quux.org/devel/hdbc>here</a>. </p> </li> <li> <p> <em> hpodder\n</em>. John Goerzen <a\nhref=http://article.gmane.org/gmane.comp.lang.haskell.general/13880>announced</a>\nthe first release of hpodder. hpodder is a podcast downloader (podcatcher)\nwritten in pure Haskell. It exists because John was unsatisfied with the other\npodcatchers for Linux. Full details <a\nhref=http://quux.org/devel/hpodder>here</a>. </p> </li> <li> <p> <em> hmp3 1.1\n</em>. Don Stewart <a\nhref=http://article.gmane.org/gmane.comp.lang.haskell.general/13864>announced</a>\na new release of hmp3, the curses-based mp3 player written in Haskell. Release\n1.1 is a maintenance release, fixing support for GHC 6.4.2 </p> </li> <li> <p>\n<em> HSP.Clientside 0.001 </em>. Joel Bjornson <a\nhref=http://article.gmane.org/gmane.comp.lang.haskell.general/13851>announced</a>\na prerelease version of Hsp.Clientside. This is Joel\'s <a\nhref=http://code.google.com/soc/haskell/about.html>Summer of Code</a> project\naiming to add support for client-side script generation in Haskell Server Pages.\nThe basic building blocks for embedding Javascript has been implemented. As the\nproject proceeds a suitable programming model based on these components will be\nadded. Hopefully this will also include some kind of higher level Ajax support.\nFor more information see <a\nhref=http://www.dtek.chalmers.se/~bjornson/soc>here</a>. </p> </li> <li> <p>\n<em> QDBM and Hyper Estraier bindings </em>. Jun Mukai <a\nhref=http://article.gmane.org/gmane.comp.lang.haskell.libraries/4821>released</a>\na library of bindings to Quick DBM, a database module similar to GDBM,\nBerkeley-DB, optimized for performance and a simple API. Additionally, Jun\'s\ncode includes support for Hyper Estraier, a full-text search system using QDBM,\nwith the ability to search documents according to keywords. </p> </li> <li> <p>\n<em> Streams 0.2 </em>. Bulat Ziganshin <a\nhref=http://article.gmane.org/gmane.comp.lang.haskell.libraries/4820>announced</a>\nthe beta release of his Streams 0.2 library, providing fast string and binary\nIO, now with Data.ByteString support. </p> </li> <li> <p> <em> HNOP 0.1 </em>.\nAshley Yakeley <a\nhref=http://article.gmane.org/gmane.comp.lang.haskell.general/13881>released</a>\nthe first version of HNOP 0.1. HNOP does nothing. This version should be\nconsidered \"beta\" quality. </p> </li> <li> <p> <em> HList updates </em>. Oleg\nKiselyov <a\nhref=http://article.gmane.org/gmane.comp.lang.haskell.general/13905>announced</a>\nthat HList, the library for strongly typed heterogeneous lists, records,\ntype-indexed products (TIP) and co-products is now accessible via darcs, <a\nhref=http://darcs.haskell.org/HList/>here</a>. Additionally, Oleg pointed to\nsome new features for HList, including a new representation for open records.\nFinally, he <a\nhref=http://article.gmane.org/gmane.comp.lang.haskell.general/13906>published</a>\na note on how HList supports, natively, polymorphic variants: extensible\nrecursive open sum datatypes, quite similar to Polymorphic variants of OCaml.\nHList thus solves the `expression problem\' -- the ability to add new variants to\na datatype without changing the existing code. </p> </li> <li> <p> <em> Haskell\nIO Inside </em>. Bulat Ziganshin <a\nhref=http://article.gmane.org/gmane.comp.lang.haskell.cafe/13409>wrote</a> a new\nintroductory tutorial to IO in Haskell, <a\nhref=http://haskell.org/haskellwiki/IO_inside>Down the Rabbit\'s Hole</a>. </p>\n</li> <li> <p> <em> Bytecode API 0.2 </em>. Robert Dockins <a\nhref=http://article.gmane.org/gmane.comp.lang.haskell.yhc/146>published</a> the\nYhc Bytecode API version 0.2. More details <a\nhref=http://www.eecs.tufts.edu/~rdocki01/yhc-bytecode.html>here</a>. </p> </li>\n<li> <p> <em> Translating Haskell into English </em>. Shannon Behrens <a\nhref=http://www.linuxjournal.com/article/9096>published</a> a new Haskell\ntutorial, hoping to give readers a glimpse of the Zen of Haskell, without\nrequiring that they already be Haskell converts. </p> </li> </ul> <h4> Haskell\'\n</h4> This section covers the <a\nhref=http://hackage.haskell.org/trac/haskell-prime>Haskell\'</a> standardisation\nprocess. <ul> <li> <a\nhref=\"http://thread.gmane.org/gmane.comp.lang.haskell.prime/1561/focus=1561\">Nested\nGuards</a> </li> </ul> <h4> Discussion </h4> <ul> <li> <p> <em> Haskell and the\nGreat Language Shootout, reloaded </em>. Simon Marlow <a\nhref=http://thread.gmane.org/gmane.comp.lang.haskell.general/13857/focus=13857>highlighted</a>\nsome remarks and discussion from Brent Fulgham, the driving force behind the <a\nhref=http://shootout.alioth.debian.org/>Great Language Shootout</a> on the\nimpact recent advances in the performance of GHC have had. In particular, many\nbenchmarks had to be rewritten due to the performance advantage lazy Haskell\nprograms had over strict (and wasteful) entries in other languages. Brent noted\nthat \"applications written in Haskell can be reasonably expected to yield good\nperformance on all of the common x86 platforms without customizations\". This in\nturn led to a discussion about further improvements we can expect to see in GHC\nHaskell over the next few months. </p> </li> <li> <p> <em> HNOP, doing nothing,\nand really complex ways of doing nothing </em>. Ashley Yakeley <a\nhref=http://thread.gmane.org/gmane.comp.lang.haskell.general/13881/focus=13881>forked</a>\na somewhat surreal thread regarding Haskell programs that do nothing. </p>\n</li> </ul> <h4> Quotes of the Week </h4> <ul> <li> Brian Hulley : \"It is\ndefinitely *a* haskell. There is actually no word in English with a silent \'h\',\nthough this statement is unfortunately controversial and news to whoever wrote\nthe spell checker used in many printed publications. Of course some particular\ndialects use different pronunciation like \'me \'otel room \'ad an \'askell \'mpiler\nin t\' closet as well as tub \'n sink tha knows\'\" </li> </ul> <h4> Code Watch\n</h4> <p> <p> <pre>\n Thu Jun 29 06:58:36 PDT 2006 Simon Marlow\n * No longer force -fvia-C for the RTS, it can now be compiled with the\n NCG\n</pre> </p> <p> <pre>\n Sat Jul 1 01:43:45 PDT 2006 Don Stewart\n * Import Data.ByteString.Lazy, improve ByteString Fusion, and resync\n with FPS head\n\n This patch imports the Data.ByteString.Lazy module, and its helpers,\n providing a ByteString implemented as a lazy list of strict\n cache-sized chunks. This type allows the usual lazy operations to be\n written on bytestrings, including lazy IO, with much improved space\n and time over the [Char] equivalents.\n</pre> </p> </p> <h4> Contributing to HWN </h4> <p> To help create new editions\nof this newsletter, please see the <a\nhref=\"http://haskell.org/haskellwiki/HWN\">contributing information</a>. Send\nstories to <code>\n dons at cse.unsw.edu.au </code>\n. The darcs repository is available at<br>\n<code> darcs get http://www.cse.unsw.edu.au/~dons/code/hwn </code> </p> ', created = 1228371798, expire = 1228458198, headers = '' WHERE cid = '6:3bac5ce86d4d2973f714de54ae86c6c4' in /var/local/drupal/includes/database.mysql.inc on line 172.
by dons () Welcome to issue 39 of HWN, a weekly newsletter covering developments in the
Haskell community. Each week, 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. A
week of busy activity in the community. Thanks to Simon Marlow and Josef
Svenningsson for contributions to this issue. Announcements
-
HDBC 1.0 . John Goerzen released
the latest HDBC. HDBC is a database tool, modeled loosely on Perl's DBI
interface, though it has also been influenced by Python's DB-API v2, JDBC in
Java, and HSQL in Haskell. You can find the code here. -
hpodder
. John Goerzen announced
the first release of hpodder. hpodder is a podcast downloader (podcatcher)
written in pure Haskell. It exists because John was unsatisfied with the other
podcatchers for Linux. Full details here. -
hmp3 1.1
. Don Stewart announced
a new release of hmp3, the curses-based mp3 player written in Haskell. Release
1.1 is a maintenance release, fixing support for GHC 6.4.2 -
HSP.Clientside 0.001 . Joel Bjornson announced
a prerelease version of Hsp.Clientside. This is Joel's Summer of Code project
aiming to add support for client-side script generation in Haskell Server Pages.
The basic building blocks for embedding Javascript has been implemented. As the
project proceeds a suitable programming model based on these components will be
added. Hopefully this will also include some kind of higher level Ajax support.
For more information see here. -
QDBM and Hyper Estraier bindings . Jun Mukai released
a library of bindings to Quick DBM, a database module similar to GDBM,
Berkeley-DB, optimized for performance and a simple API. Additionally, Jun's
code includes support for Hyper Estraier, a full-text search system using QDBM,
with the ability to search documents according to keywords. -
Streams 0.2 . Bulat Ziganshin announced
the beta release of his Streams 0.2 library, providing fast string and binary
IO, now with Data.ByteString support. -
HNOP 0.1 .
Ashley Yakeley released
the first version of HNOP 0.1. HNOP does nothing. This version should be
considered "beta" quality. -
HList updates . Oleg
Kiselyov announced
that HList, the library for strongly typed heterogeneous lists, records,
type-indexed products (TIP) and co-products is now accessible via darcs, here. Additionally, Oleg pointed to
some new features for HList, including a new representation for open records.
Finally, he published
a note on how HList supports, natively, polymorphic variants: extensible
recursive open sum datatypes, quite similar to Polymorphic variants of OCaml.
HList thus solves the `expression problem' -- the ability to add new variants to
a datatype without changing the existing code. -
Haskell
IO Inside . Bulat Ziganshin wrote a new
introductory tutorial to IO in Haskell, Down the Rabbit's Hole.
-
Bytecode API 0.2 . Robert Dockins published the
Yhc Bytecode API version 0.2. More details here.
-
Translating Haskell into English . Shannon Behrens published a new Haskell
tutorial, hoping to give readers a glimpse of the Zen of Haskell, without
requiring that they already be Haskell converts. Haskell'
This section covers the Haskell' standardisation
process. Discussion -
Haskell and the
Great Language Shootout, reloaded . Simon Marlow highlighted
some remarks and discussion from Brent Fulgham, the driving force behind the Great Language Shootout on the
impact recent advances in the performance of GHC have had. In particular, many
benchmarks had to be rewritten due to the performance advantage lazy Haskell
programs had over strict (and wasteful) entries in other languages. Brent noted
that "applications written in Haskell can be reasonably expected to yield good
performance on all of the common x86 platforms without customizations". This in
turn led to a discussion about further improvements we can expect to see in GHC
Haskell over the next few months. -
HNOP, doing nothing,
and really complex ways of doing nothing . Ashley Yakeley forked
a somewhat surreal thread regarding Haskell programs that do nothing.
Quotes of the Week - Brian Hulley : "It is
definitely *a* haskell. There is actually no word in English with a silent 'h',
though this statement is unfortunately controversial and news to whoever wrote
the spell checker used in many printed publications. Of course some particular
dialects use different pronunciation like 'me 'otel room 'ad an 'askell 'mpiler
in t' closet as well as tub 'n sink tha knows'"
Code Watch
Thu Jun 29 06:58:36 PDT 2006 Simon Marlow
* No longer force -fvia-C for the RTS, it can now be compiled with the
NCG
Sat Jul 1 01:43:45 PDT 2006 Don Stewart
* Import Data.ByteString.Lazy, improve ByteString Fusion, and resync
with FPS head
This patch imports the Data.ByteString.Lazy module, and its helpers,
providing a ByteString implemented as a lazy list of strict
cache-sized chunks. This type allows the usual lazy operations to be
written on bytestrings, including lazy IO, with much improved space
and time over the [Char] equivalents.
Contributing to HWN To help create new editions
of this newsletter, please see the contributing information. Send
stories to
dons at cse.unsw.edu.au
. The darcs repository is available at
darcs get http://www.cse.unsw.edu.au/~dons/code/hwn
|