General News

Haskell Weekly News: November 8, 2005

Submitted by jgoerzen on Tue, 11/08/2005 - 5:47am.

Greetings, and thanks for reading the 14th issue of HWN, a weekly newsletter for the Haskell community. Each Tuesday, new editions will be posted (as text) to the Haskell mailing list and (as HTML) to The Haskell Sequence.

New Releases

  • Haskell-mode 2.1. Stefan Monnier recently released version 2.1 of his haskell editing mode for Emacs.
  • Gtk2hs 0.9.10. Duncan Coutts announced that the latest version of the GTK bindings for Haskell is now available. Major new features include the Cairo vector graphics library bindings, Pango text layout code, new Gtk+ 2.8 APIs, and a Windows installer.
  • Frown 0.6. Ralf Hinze announced the first release of Frown, a LALR(k) parser generator for Haskell. Frown has a number of interesting features and is considered beta-quality at this time.
  • network-alt 0.3 and hsgnutls 0.2.1. Einar Karttunen announced the availability of new versions of these two libraries. network-alt is an alternative networking library designed to have a nicer API and better performance. hsgnutls is a TLS/SSL layer atop the GNU TLS library, supporting both client and server applications.

Calls for Participation

Top 10 articles. Kenneth Hoste posted a request for people to contribute articles about various Haskell subjects. Each article will list the 10 most famous or frequently used things about that particular subject, and will be posted through The Monad.Reader.

Discussion

Time libraries. Ashley Yakeley started a lively thread about time libraries in Haskell.

Conferences

Haskell Workshop Steering Committee. Johan Jeuring announced that ACM SIGPLAN has approved a Haskell Workshop Steering Committee to offer help and advice to the organizers of the workshop.

Darcs Corner

Darcs 1.0.4rc2 is out. David Roundy announced the release of Darcs 1.0.4rc2, the second and hopefully last candidate before the 1.0.4 release.

About Haskell Weekly News

Want to continue reading HWN? Please help us create new editions of this newsletter. Please see the contributing information, or send stories to hwn -at- complete -dot- org. There is also a Darcs repository available.

Haskell Weekly News: November 1, 2005

Submitted by jgoerzen on Tue, 11/01/2005 - 5:27am.

Greetings, and thanks for reading the 13th issue of HWN, a weekly newsletter for the Haskell community. Each Tuesday, new editions will be posted (as text) to the Haskell mailing list and (as HTML) to The Haskell Sequence.

New Releases

  • Time Library 0.2. Ashley Yakeley announced a draft of a new time library and solicited comments.

Calls for participation

HCAR entries due TODAY. Andres Loeh posted a reminder that entries for the Haskell Communities and Activities Report are due today.

Discussion

Undecidable instances. In a thread about the need for undecidable instances, Johannes Waldmann suggested the use of termination analyzers.

Finding the character frequency in a string. Jon Fairbairn started an interesting thread about calculating the frequency each character in a string occurs.

FFI and modifying Haskell memory. Joel Reymont asked about proper FFI design for programs that read data in.

Haskell Toolchain

GHC assembly. John Meacham posted an analysis of GHC's assembly output, a comparison to jhc, and some suggestions for improving GHC's output.

Data.* collections maintenance. This large thread on the libraries list covered potential future directions for the Data.* libraries.

Quotes of the Week

For those that adhere to learn one new language per year which other languages should we learn?
Matz suggests io (or Haskell but he admits it makes his brain explode).
-- From RubyConf 2005 Roundtable discussion with Yukihiro "Matz" Matsumoto, creator of Ruby.

The Meta-FAQ

Q: What happened to HWN last week?

A: The answer to this question really goes back to the 16th century and the first movements in Europe to modernize astronomy away from the earth-centric view. But it wasn't really until Newton's time (late 17th and early 18th centuries) that we started to have the more advanced understanding necessary to begin answering this question. Modern astronomers have been able to calculate the period of the earth at 86164.09053 seconds, which is a few minutes shorter than the apparent day due to the earth's simultaneous orbit around the sun.

The second part of the answer to this question dates back even farther to ancient Egypt. The Egyptians used a duo-decimal numbering system, and found it convenient to separate each day into 24 equal units. Since then, other definitions for the hour have come in to play, usually based on the apparent solar day or the time between sunrise and sunset. These days, the hour is defined at 3600 seconds.

While each day appears to consist of approximately 24 hours, the period of the earth really is 23 hours, 56 minutes, and 4.09053 seconds. (I for one am pleased to receive the extra 4 minutes per day.)

So, we can see that the problem really is that there just weren't enough hours in a day for your HWN editor to get the issue out on time last week. I blame it on the ancient Egyptians.

Q: Would HWN have come out on time if you hadn't had to prepare a lengthy explanation for why it was late?

A: Good question. You should medidate on that for awhile and let us know for next week's HWN.

Q: Does this issue cover two weeks of fascinating Haskell news then?

A: Of course!

About Haskell Weekly News

Thanks to Jim Apple and Josef Svenningsson for contributing to this week's HWN.

Want to continue reading HWN? Please help us create new editions of this newsletter. Please see the contributing information, or send stories to hwn -at- complete -dot- org. There is also a Darcs repository available.

Haskell Weekly News: October 18, 2005

Submitted by jgoerzen on Tue, 10/18/2005 - 12:15pm.

Greetings, and thanks for reading the 12th issue of HWN, a weekly newsletter for the Haskell community. Each Tuesday, new editions will be posted (as text) to the Haskell mailing list and (as HTML) to The Haskell Sequence.

New Releases

  • Decimal arithmetic library. Jeremy Shaw announced the "premature release" of his new Decimal arithmetic library, which is designed for cases where binary floating point is not acceptable, such as money.
  • JRegex. John Meacham announced JRegex, a library that interfaces to both PCRE and Posix regular expressions.
  • Haskell XML Toolbox 5.3. Uwe Schmidt announced version 5.3 of the Haskell XML Toolbox. The main changes in this release are improvements to the arrow system.

Requests for Participation

Future Haskell Standard. Isaac Jones posted a request for participation in the formation of the next standardized version of Haskell.

HCAR Clarification. Last week's HWN story on the Haskell Communities & Activities Report (HCAR) had some misleading wording. Participation in this report is open to all, and submissions are encouraged from everyone.

Discussion

Haskell mentioned on Slashdot. Haskell was mention on Slashdot. The post was refering to an article about optimizing development for fun and had pugs as its example.

ZLib bindings. Joel Reymont asked about code for handling GZip files. Henning Thielemann suggested the code in Darcs. Malcom Wallace pointed out code in qforeign, and John Goerzen mentioned the pure-Haskell implementation in MissingH.

GADTs. Bulat Ziganshin began a discussion asking for resources on GADTs. Several people posted links to helpful resources.

Class aliases. John Meacham began a long discussion by proposing class aliases, a language extension to solve problems of multiple implementations of the same concept in different libraries.

About Haskell Weekly News

Thanks to Josef Svenningsson for contributing material towards this week's HWN.

Want to continue reading HWN? Please help us create new editions of this newsletter. Please see the contributing information, or send stories to hwn -at- complete -dot- org. There is also a Darcs repository available.

Haskell Weekly News: October 11, 2005

Submitted by jgoerzen on Tue, 10/11/2005 - 5:42am.

Greetings, and thanks for reading the 11th issue of HWN, a weekly newsletter for the Haskell community. Each Tuesday, new editions will be posted (as text) to the Haskell mailing list and (as HTML) to The Haskell Sequence.

New Releases

  • PAM 1.0. Henning Guenther announced version 1.0 of his bindings to the PAM authentication libary.
  • cpphs 1.0. Malcolm Wallace announced the release of cpphs version 1.0.
  • MissingH 0.12.0. John Goerzen announced MissingH 0.12.0, which added various enhancements to its binary I/O utilities.

Calls for Participation

  • Haskell Communities & Activities Report. Andres Loeh posted a call for contributions to the periodic report. Anyone that's part of a Haskell team, has published Haskell code, written Haskell-related papers or books, etc. is encouraged to submit a short entry about their activities.

Discussion

Papers from the 2005 Haskell Workship. Dimitry Golubovsky noted that papers from the workshop on the ACM site required a login to read. Simon Marlow posted a free link to the papers he co-authored.

IRC for spreading information. John Goerzen wrote about some concerns regarding using IRC for spreading information to the Haskell community, such as happened recently. It received some discussion on #haskell.

Reducing memory usage. Young Hyun began an interesting thread about tracking down mysterious cases of high RAM usage. Several people made suggestions for things to try, including things that would be useful to others.

Memoization. Gerd M wondered why Data.Map was slower than he expected in his program.

Monad Syntax. Tom Hawkins asked about the syntax "| m -> s" in class declarations. Several people explained that this has to do with functional dependencies, an extension to Haskell 98.

Alternatives to hs-plugins. John Goerzen posted a scenario in which hs-plugins would be useful, but where concerns about its portability may render it inappropriate. Nils Anders Danielsson replied with a link to his code that can call Hugs to dynamically evaluate Haskell snippets.

Haskell Toolchain

Converting fptools to Darcs. Simon Marlow wrote about his ideas for converting fptools from CVS to Darcs. Several people made suggestions and asked questions.

About Haskell Weekly News

Want to continue reading HWN? Please help us create new editions of this newsletter. Please see the contributing information, or send stories to hwn -at- complete -dot- org. There is also a Darcs repository available.

Haskell Weekly News: October 4, 2005

Submitted by jgoerzen on Tue, 10/04/2005 - 8:27am.

Greetings, and thanks for reading the 10th issue of HWN, a weekly newsletter for the Haskell community. Each Tuesday, new editions will be posted (as text) to the Haskell mailing list and (as HTML) to The Haskell Sequence.

New Releases

  • The Monad.Reader, Issue 5. Shae Matijs Erisson announced the release of the fifth issue of The Monad.Reader, the online magazine devoted to Haskell. Subjects in this issue include a short introduction to Haskell, generating polyominoes, a ray tracer, number parameterized types, practical graph manipulation, and a short introduction to software testing in Haskell. TMR is available online.

Discussion

Quiet or Busy? It's been a quiet week on the Haskell lists, so this week's HWN is a bit sparse. But that's because many Haskellers were at the Haskell workshops at ICFP in Estonia. I expect we'll see some fallout from those workshops on the list in the coming week.

Haskell workshop items. Over on the IRC channel logs from September 30, there was a live conversation beginning at 15:36:33 of the "Future of Haskell discussion." Autrijus Tang's journal had several pages of entries, including one providing a nice summary.

Endian conversion. Joel Reymont asked about converting binary data in a network protocol, and several suggestions were posted in the resulting discussion.

Is putChar strict? John Meacham asked this question, and pointed out that different Haskell compilers/interpreters are behaving in different ways.

About Haskell Weekly News

Want to continue reading HWN? Please help us create new editions of this newsletter. Please see the contributing information, or send stories to hwn -at- complete -dot- org. There is also a Darcs repository available.

Haskell Weekly News: September 27, 2005

Submitted by jgoerzen on Wed, 09/28/2005 - 5:50am.

Greetings, and thanks for reading the ninth issue of HWN, a weekly newsletter for the Haskell community. Each Tuesday, new editions will be posted (as text) to the Haskell mailing list and (as HTML) to The Haskell Sequence.

New Releases

  • GHC 6.4.1 for MacOS X. Wolfgang Thaller announced the availability of a binary GHC 6.4.1 package for MacOS X.
  • ghc-api 0.1.0. Lemmih announced ghc-api, a cabalization of the GHC 6.5 API. It is currently used by hIDE.

Discussion

Haskell Team Winns ICFP! Congratulations to Wolfgang Thaller's team for winning the ICFP 2005 programming contest! According to the ICFP homepage, "First prize goes to KiebererAndXiaoTou. The judges are happy to proclaim that Haskell is the programming tool of choice for discriminating hackers." This is the second year in a row in which a team using Haskell has taken first place in this contest.

The Combat-Tanteidan team (Takayuki Muranushi and Hideyuki Tanaka), also using Haskell, took third place in this year's ICFP.

In addition, on page 68 of the presentation slides, you can see that Haskell was the top-performing language at the contest overall. The author wrote, "The clear fact that stands out here is that Haskell is the language of choice for the programming contest. Haskell stands out a little bit in the first round, but it clearly stands out in the twist. So, kudos to the Haskell community for both producing a language that lets people build re-usable code and instilling this as a value in their community!"

Unfortunately, the names of all team members were not documented, so I was not able to list the real names for this story. Thanks to Don Stewart for sending me information about this.

Haskell-style proof tools. Robin Green asked about proof tools, and the resulting thread contained several suggestions.

Trapped by Monads. In this thread, the infamous IO monad was discussed, along with a number of comparisons to Forth.

Quote of the Week

Haskell is the programming tool of choice for discriminating hackers. -- ICFP 2005 judges

About Haskell Weekly News

Want to continue reading HWN? Please help us create new editions of this newsletter. Please see the contributing information, or send stories to hwn -at- complete -dot- org. There is also a Darcs repository available.

Haskell Weekly News: September 20, 2005

Submitted by jgoerzen on Tue, 09/20/2005 - 5:23am.

Greetings, and thanks for reading the eighth issue of HWN, a weekly newsletter for the Haskell community. Each Tuesday, new editions will be posted (as text) to the Haskell mailing list and (as HTML) to The Haskell Sequence.

New Releases

  • GHC 6.4.1. According to Simon Marlow's announcement, GHC 6.4.1 is out and is mainly a bugfix release. No library APIs have changed, so code working with GHC 6.4 should continue to work.
  • Visual Haskell 0.0. Simon Marlow announced Visual Haskell 0.0, a Haskell development environment for the Microsoft Visual Studio platform.

Discussion

Autrijus Tang interviewed at perl.com. Autrijus Tang is a Perl hacker and developer of the first working Perl 6 interpreter, which is written in Haskell. On Page 2 of an interview on perl.com, he explained Haskell in glowing terms to the Perl audience. Favorite quote: "Haskell . . . is faster than C++, more concise than Perl, more regular than Python, more flexible than Ruby, more typeful than C#, more robust than Java, and has absolutely nothing in common with PHP." Thanks to metaperl for mentioning this on the Haskell Sequence. There was als a small thread about this.

Overloading (==). In an interesting thread, Tom Hawkins asked if it was possible to overload (==) to return something other than a Bool. The answer was no, but the discussion led to comments about using typeclasses instead of a simple Bool type in certain situations.

Haskell vs. Lisp. This discussion began with a post from Mark Carter, who is considering Haskell and wondering what advantages it might have over Lisp. Many perspectives were discussed, especially relating to metaprogramming (Lisp macros and Template Haskell). David F. Place had an interesting post. As someone with experience with both Haskell and Lisp, he commented that Haskell's "lazy evaluation eliminates 99% of the need for macros in Lisp." There were also posts by Tomasz Zielonka, Cale Gibbard were also insightful.

Network Parsing and Parsec. John Goerzen posed a question about using Parsec to parse network streams such as IMAP, where the results of the parsing itself determine how much data should be read, and reading too much data results in deadlock. Some solutions offered included a separate tokenizer phase and the use of the Parsec state to help.

Haskell Toolchain

The Big News this week is, of course, the new release of GHC. A big thanks to everyone on the GHC team for this.

Cabal du jour. Cabal keeps coming up on the libraries list. This week's discussion revolves around whether or not a --package-db option is wise.

Quotes of the Week

"Learning Haskell requires some brain rewiring, so the best way to learn it is by coding something in it for real. Yuval, a fellow "lambdacamel," learned Haskell from scratch by coding up a Forth parser, interpreter, and runtime all within a few days." -- Autrijus Tang

Corrections

Two typos in last week's HWN. In the web applications story, "S. Alexander Jacobsen" should have been "S. Alexander Jacobson". In the binary pasrser combinators story, "Malcolm Wallac" should have been "Malcolm Wallace". Sorry about that.

About Haskell Weekly News

Want to continue reading HWN? Please help us create new editions of this newsletter. Please see the contributing information, or send stories to hwn -at- complete -dot- org. There is also a Darcs repository available.

Haskell Weekly News: September 13, 2005

Submitted by jgoerzen on Wed, 09/14/2005 - 6:29am.

Greetings, and thanks for reading the seventh issue of HWN, a weekly newsletter for the Haskell community. Each Tuesday, new editions will be posted (as text) to the Haskell mailing list and (as HTML) to The Haskell Sequence.

New Releases

  • CabalFind 0.1. Dimitry Golubovsky announced CabalFind 0.1, an interface to search engines such as Google and Yahoo designed to help find Cabalized packages out on the Internet.
  • gtk2hs with Cairo. Duncan Coutts announced a special release of gtk2hs as a "tech preview" of the included Cairo bindings. Some impressive screenshots are in there as well.
  • OOHaskell. Ralf Laemmel and Olaf Kiselyov announced a new version of their paper, "Haskell's overlooked object system" and its accompanying library.
  • StringMap. Adrian Hey announced his new module, Data.StringMap, which provides mapes from String keys to arbitrary values.
  • AVL 2.3. Adrian Hey announced version 2.3 of his Data.Tree.AVL library, adding a few new features and a bit of renaming.

Discussion

Why is HWN a day late this week? Your HWN editor was stuck in some large airports that had a surprising lack of Wifi. Sigh.

Binary parser combinators. Einar Karttunen asked about a binary parser combinator interface for network protocol parsing. Malcolm Wallac pointed out that nhc98 has a Binary library with a "<<" operator that could be useful.

Windows programming in Haskell. Brian McQueen asked about Windows programming in Haskell, including access to the Windows registry, APIs, and communicating with other Windows apps. Several suggestions relating to Hugs were offered, including .NET support and some libraries.

Functional vs. Imperative. Dhaemon began an interesting discussion by asking for some help understanding functional vs. imperative approaches. Several people commented on the IO monad, and how it is still a functional interface even though it may appear imperative at first glance.

Mixing monadic and non-monadic functions. A long thread on this subject appeared in the Haskell list this week. Rather too long to summarize here -- take a look at the link.

Language workbenches. Yoel Jacobsen wrote about an article on language workbenches, in which configuration files are actually valid code in a general-purpose language. Yoel went on to ask about doing this in Haskell. Some suggestions, such as hs-plugins, were offered.

Types in Template Haskell. Gracjan Polak posted about some trouble with typing in Template Haskell. Several responses regarding quoting types were posted, including a reference to Simon Marlow's "update" paper.

Web applications. Gary began a large discussion by asking about writing Web applications. Several options were mentioned, including Wash and HAppS. S. Alexander Jacobsen mentioned that he will be launching a commercial chat service using Haskell and AJAX with HAppS as the underlying core.

Calling Haskell from C++. Felix Breuer wrote about some trouble calling into Haskell from C++ programs. Several suggestions were provided, mostly relating to C++ name mangling.

What gets profiled? Niels began a discussion on the use of profiling features by commenting that profiling didn't seem to show the problem in his own code. Several suggestions regarding memory use and possible reasons that profilers might miss things were provided.

Haskell Toolchain

GHC 6.4.1. Simon Marlow posted an update on GHC 6.4.1. Though more bug reports have been rolling in while he was away, only a few are blockers for 6.4.1. The tentative release date is September 19.

Data.Monoid. Ross Paterson proposed replacing an instance of Data.Monoid. There was some discussion about whether the old or new instance was better.

Quotes of the Week

<poetix> "Oh, a monad...that's just a funny name for a particular sort of arrow" <mcnster> Chocolate Frosted Monads, new from Cadbury <mcnster> ... "All the sugar, twice the arrows" <mcnster> Mr. Tweedsmuir, we're going to have to bypass your left ventrical monad. You'll probably never play Chopin again <poetix> Readers of the ABC Warriors strip in 2000AD may remember The Monad as the concentrated essence of human evil <mcnster> Monadocet. Because category theory should be understood by everyone.

About Haskell Weekly News

Want to continue reading HWN? Please help us create new editions of this newsletter. Please see the contributing information, or send stories to hwn -at- complete -dot- org. There is also a Darcs repository available.

Haskell Weekly News: September 6, 2005

Submitted by jgoerzen on Tue, 09/06/2005 - 6:02am.

Greetings, and thanks for reading the sixth issue of HWN, a weekly newsletter for the Haskell community. Each Tuesday, new editions will be posted (as text) to the Haskell mailing list and (as HTML) to The Haskell Sequence.

New Releases

  • h4sh 0.2. Donald Bruce Stewart announced version 0.2 of h4sh, a tool to expose Haskell functions to shell scripters. This release adds more functions, removed argument flags, cabalized the package, added regex operators, and had some other changes as well.
  • cabal-get/put beta. Isaac Jones announced the beta of cabal-get, which will download and install Haskell packages and their dependencies. It is designed to work for any cabal-compatible package. The cabal-get team is looking for beta testers to try out both cabal-get and cabal-put.

Discussion

Emacs haskell-mode. Frederik Eaton began a thread on the Emacs haskell-mode, asking where the latest version is available from.

Time limits on computations. Dmitry Vyal asked how to set a time limit on computations. Several different suggestions were presented over the course of the discussion.

Haskell Toolchain

The Haskell CVS server, previously hosted at OGI, is now being hosted by Galois. There is a new machine and updated software, but it should be a drop-in replacement overall.

Darcs Corner

Darcs 1.0.4pre3 and pre4. Two new Darcs prerelease versions happened this week. First, 1.0.4pre3 was announced this week. 1.0.4pre4 quickly followed, correcting an error in a Makefile. This is expected to be the last prerelease prior to 1.0.4 itself.

Quote of the Week

"When I read through a Haskell program, it's more like reading a novel than solving a calculus problem." -- post on the Haskell Sequence

About Haskell Weekly News

Want to continue reading HWN? Please help us create new editions of this newsletter. Please see the contributing information, or send stories to hwn -at- complete -dot- org. There is also a Darcs repository available.

Haskell Weekly News: August 30, 2005

Submitted by jgoerzen on Wed, 08/31/2005 - 6:43am.

Greetings, and thanks for reading the fifth issue of HWN, a weekly newsletter for the Haskell community. Each Tuesday, new editions will be posted (as text) to the Haskell mailing list and (as HTML) to The Haskell Sequence.

HWN is 1 day late this week. Pesky Real Life (TM) interfered. Sorry about that. Hopefully this won't happen again. Also, anyone that wants to help edit HWN is welcome to do so. See the contributing section at the end.

New Releases

  • FUSE bindings. David Roundy announced bindings for FUSE, the Linux library that lets people develop a filesystem using userspace code. Isaac Jones also mentioned Jeremy Bobbio's FUSE bindings.
  • FastPackedString (FPS) packaging. Donald Bruce Stewart has extraced the FastPackedString module from darcs and produced a standalone package. It is useful for working with binary data and blocks of string data.
  • Haskell Server Pages (HASP). Lemmih announced Haskell Server Pages 0.3, an infrastructure for developing dynamic web sites. It's based around XML and the earlier work on HSP.
  • Cairo bindings for gtk2hs completed. Paolo Martini announced that the Cairo bindings have been checked into the gtk2hs CVS repo on SourceForge.

Discussion

Parsing Binary Files. Joel Reymont began an interesting discussion by asking about using Haskell to implement a parser for a binary poker protocol. Erlang has some binary pattern matching features, and there was some discussion about achieving similar results in Haskell.

Using STArray. Alistair Bayley asked how to use STArray to improve the performance of a program. Numerous suggestions were offered in the ensuing discusion, including a link to some examples on the Haskell wiki.

Compiling Windows GUI Executables. Juan Carlos Arevalo Baeza asked about compiling Windows GUI executables with ghc. Duncan Coutts posted a link to the Gtk2Hs FAQ explaining the procedure.

Quotes of the Week

<xerox> <bitwize> Then Edsger Dijkstra came down from Mt. Sinai with a tablet proclaiming "Thou shalt not use GOTO; it is considered harmful"...

From Chad Scherror on the haskell-cafe list: "I've been amazed at the level of effort put forth by the Haskell community as a whole to help out newcomers."

About Haskell Weekly News

Want to continue reading HWN? Please help us create new editions of this newsletter. Please see the contributing information, or send stories to hwn -at- complete -dot- org. There is also a Darcs repository available.