[Haskell] Haskell Weekly News: April 17, 2006

Donald Bruce Stewart dons at cse.unsw.edu.au
Mon Apr 17 01:29:52 EDT 2006


                  Haskell Weekly News: April 17, 2006

   Greetings, and thanks for reading issue 33 of HWN, a weekly newsletter
   covering developments in the Haskell community. Each Monday, new
   editions are posted to [1]the Haskell mailing list and to [2]The
   Haskell Sequence. [3]RSS is also available. Headlines also go to
   [4]haskell.org.

   1. http://www.haskell.org/mailman/listinfo/haskell
   2. http://sequence.complete.org/
   3. http://sequence.complete.org/node/feed
   4. http://haskell.org/

Announcements

     * Halfs, a Haskell filesystem. Isaac Jones [5]announced the first
       release of Halfs, a filesystem written in Haskell. Halfs can be
       mounted and used like any other Linux filesystem, or used as a
       library. Halfs is a fork (and a port) of the filesystem developed
       by Galois Connections. In addition, Halfs comes with a virtual
       machine to make using it extremely easy. You don't need an extra
       partition or a thumb drive, or even Linux (Windows and Mac OS can
       emulate the virtual machine). See more at [6]the Halfs site.

   5. http://article.gmane.org/gmane.comp.lang.haskell.general/13550
   6. http://www.haskell.org/halfs/

     * DrIFT-2.2.0. John Meacham [7]released DrIFT-2.2.0, the type
       sensitive preprocessor for Haskell. It extracts type declarations
       and directives from modules. The directives cause rules to be
       fired on the parsed type declarations, generating new code which
       is then appended to the bottom of the input file. Read more
       [8]here.

   7. http://article.gmane.org/gmane.comp.lang.haskell.general/13541
   8. http://repetae.net/john/computer/haskell/DrIFT/

     * MissingH 0.14.2. John Goerzen [9]announced version 0.14.2 of
       MissingH, the library of "missing" Haskell code. Now including
       support for shell globs, POSIX-style wildcards and more. Check
       [10]here for more details.

   9. http://article.gmane.org/gmane.comp.lang.haskell.general/13555
  10. http://quux.org/devel/missingh

     * HAppS - Haskell Application Server 0.8 Einar Karttunen
       [11]announced HAppS 0.8. The Haskell Application Server version
       0.8 contains a complete rewrite of the ACID and HTTP
       functionalities. Features include:

          + MACID - Monadic framework for ACID transactions.
          + An HTTP Server (outperforms Apache/PHP in informal benchmarks).
          + An SMTP Server.
          + Mail delivery agent.
          + DNS resolver in pure Haskell
          + XML and XSLT. Separate application logic from presentation using XML/XSLT.
          + And more..

       More information on the [12]the HAppS page.

  11. http://article.gmane.org/gmane.comp.lang.haskell.general/13557
  12. http://happs.org/

     * Index-aware linear algebra. Frederik Eaton [13]announced an
       index-aware linear algebra library written in Haskell. The library
       exposes index types and ranges so that static guarantees can be
       made about the library operations (e.g. an attempt to add two
       incompatibly sized matrices is a static error). Frederik's
       motivation is that a good linear algebra library which embeds
       knowledge of the mathematical structures in the type system, such
       that misuse is a static error, could mean Haskell makes valuable
       contribution in the area of technical computing, currently
       dominated by interpreted, weakly typed languages.

  13. http://article.gmane.org/gmane.comp.lang.haskell.general/13561

     * Crypto-3.0.3. Dominic Steinitz [14]announced Crypto-3.0.3, a new
       version of the Haskell Cryptography Library. Version 3.0.3
       supports: DES, Blowfish, AES, Cipher Block Chaining (CBC), PKCS#5
       and nulls padding, SHA-1, MD5 , RSA, OAEP-based encryption
       (Bellare-Rogaway), PKCS#1v1.5 signature scheme, ASN.1, PKCS#8,
       X.509 Identity Certificates, X.509 Attribute Certificates. See
       [15]here for more.

  14. http://article.gmane.org/gmane.comp.lang.haskell.general/13564
  15. http://www.haskell.org/crypto

Haskell'

   This section covers activity on [16]Haskell' standardisation process.
     * [17]Concurrency and FFI status
     * [18]On Unicode
     * [19]The goals of the concurrency standard
     * [20]Preemptive versus cooperative scheduling
     * [21]Postponing deepSeq and exceptions discussion
     * [22]Defaults for superclass methods
     * [23]Collecting requirements for FDs
     * [24]FDs and confluence
     * [25]Network IO

  16. http://hackage.haskell.org/trac/haskell-prime
  17. http://thread.gmane.org/gmane.comp.lang.haskell.prime/1409/focus=1409
  18. http://thread.gmane.org/gmane.comp.lang.haskell.prime/1404/focus=1404
  19. http://thread.gmane.org/gmane.comp.lang.haskell.prime/1361/focus=1361
  20. http://thread.gmane.org/gmane.comp.lang.haskell.prime/1354/focus=1354
  21. http://thread.gmane.org/gmane.comp.lang.haskell.prime/1352/focus=1352
  22. http://thread.gmane.org/gmane.comp.lang.haskell.prime/1328/focus=1328
  23. http://thread.gmane.org/gmane.comp.lang.haskell.prime/1318/focus=1318
  24. http://thread.gmane.org/gmane.comp.lang.haskell.prime/1296/focus=1296
  25. http://thread.gmane.org/gmane.comp.lang.haskell.prime/1432/focus=1432

Discussion

     * QuickCheck. Koen Claessen [26]hinted that a "brand new" version of
       QuickCheck with lots of cool features is soon to be released.

  26. http://article.gmane.org/gmane.comp.lang.haskell.general/13543

     * Accurate event scheduling. Henning Thielemann [27]asked about how
       to improve the accuracy of event scheduling, while working on
       Haskore, the Haskell music system. John Meacham suggested a
       binding to the Linux real time clock interface, while Tomasz
       Zielonka pointed to a library he has been developing using
       software transactional memory actions for accurate timeouts. He
       also mentioned the new registerDelay function in the GHC head.
       Measurements indicated that the average error from the expected
       waiting time dropped from 0.010140108245s to 0.00080999391s. Quite
       good results.

  27. http://thread.gmane.org/gmane.comp.lang.haskell.cafe/12350/focus=12350

     * Good fusion. [28]A casual remark about an alternative version of
       the inits function lead to a huge discussion about using fusion to
       improve code quality.

  28. http://thread.gmane.org/gmane.comp.lang.haskell.libraries/4520/focus=4520

Code watch

     * Sun Apr 2 14:59:11 PDT 2006 simonpj
       Improve newtype deriving

       Ross Paterson pointed out a useful generalisation of GHC's
       newtype-deriving mechanism. This implements it. The idea is to
       allow newtype Wrap m a = Wrap (m a) deriving (Monad, Eq) where the
       representation type doesn't start with a type constructor.

     * Tue Apr 11 05:04:41 PDT 2006 simonpj
       Allow IO to be wrapped in a newtype in foreign import/export

       Up to now, the silent unwrapping of newtypes in foreign
       import/export has been limited to data values. But it's useful for
       the IO monad itself:
            newtype MyIO a = MIO (IO a)
            foreign import foo :: Int -> MyIO Int
       This patch allows the IO monad to be wrapped too.

Contributing to HWN

   You can help us create new editions of this newsletter. Please see the
   [29]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

  29. http://haskell.org/haskellwiki/HWN


More information about the Haskell mailing list