[Haskell-cafe] ANNOUNCE: haskell-src-exts 1.14.0

Dag Odenhall dag.odenhall at gmail.com
Tue Aug 20 12:56:26 CEST 2013


Good stuff!

Is there any way, or plans for a way, to parse a file based on its LANGUAGE
pragmas? Last I checked e.g. HSP simply enabled all extensions when
parsing, which can cause code to be parsed incorrectly in some cases.


On Tue, Aug 20, 2013 at 10:15 AM, Niklas Broberg
<niklas.broberg at gmail.com>wrote:

> Fellow Haskelleers,
>
> I'm pleased to announce the release of haskell-src-exts-1.14.0!
>
> * On hackage: http://hackage.haskell.org/package/haskell-src-exts
> * Via cabal: cabal install haskell-src-exts
> * git repo: https://github.com/haskell-suite/haskell-src-exts<http://code.haskell.org/haskell-src-exts>
>
> There are two primary reasons for this release, and a number of smaller
> ones.
>
> The first primary reason is technical: haskell-src-exts 1.14 revamps the
> Extension datatype, among other things to allow turning extensions on and
> off (similar to what Cabal allows). We also introduce the concept of a
> Language, separate from a set of extensions. This is the only
> backwards-incompatible change in this release.
>
> The second reason is structural: haskell-src-exts is now part of a larger
> context -- the Haskell Suite. The package has a new home on github (see
> above), alongside its new cool friends: haskell-names and haskell-packages.
> There is also a really nice issue tracker there - please help me fill it,
> or better yet, empty it!
>
> What this release does *not* cover is support for the extensions added to
> GHC in recent time (with the exceptions of CApiFFI and InterruptibleFFI).
> Work is in progress on many of these, and there will be another major
> release not far off in the future.
>
>
> This release owes many thanks to Roman Cheplyaka in particular, as well as
> Erik Hesselink, Simon Meier and David Fox. Thanks a lot!
>
>
> Complete changelog:
>
> 1.13.6 --> 1.14.0
> ===============
>
> * Modernize the Extension datatype in L.H.E.Extension, following the lead
>   of Cabal, to allow negative and positive extension modifiers (turning
>   features on and off). You need to worry about backwards-incompatible
>   changes if any of the following pertains to you:
>   1) If you use the Extension datatype programmatically - it has changed
>      significantly (see documentation).
>   2) The ParseMode record now has one more field
>      (baseLanguage :: Language), which might give you a type error.
>   3) The behavior of the (extensions :: [Extension]) field has changed,
>      which could bite you if you pass custom extensions in the ParseMode.
>      Previously, the ParseMode defaulted to the list of extensions
> accepted
>      by Haskell2010, and if you set the list explicitly you would override
>      this. Now, the defaults are { baseLanguage = Haskell2010, extensions
> = [] },
>      and explicitly setting a list of extensions will be interpreted on
> top of
>      Haskell2010. See further the documentation for L.H.E.Extension.
>
> * Add support for the 'capi' calling convention. It is enabled with the
> CApiFFI
>   extension. It's been included since GHC 7.4, and advertised since 7.6.
>
> * Add support for the 'interruptible' FFI safety annotation, enabled with
>   the InterruptibleFFI extension.
>
> * Give better error message when lexing newline fails. In particular, fix
> the bug
>   when the parser would crash if the file didn't end with a newline.
>
> * Support unboxed tuple expressions and patterns.
>
> * Fix bug in lexing of primitive integer literals in hex or octal notation.
>
> * Disallow negative primitive word literals
>   (such as W# (-0x8000000000000000##)).
>
> * Allow phase control for SPECIALIZE pragma.
>
> * Derive Foldable and Traversable instances for all annotated AST types.
>
> * Fix bug with pretty-printing WARNING and DEPRECATED pragmas.
>
>
> Cheers, Niklas
>
> --
> You received this message because you are subscribed to the Google Groups
> "Haskell Server Pages" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to haskell-server-pages+unsubscribe at googlegroups.com.
> To post to this group, send email to haskell-server-pages at googlegroups.com
> .
> Visit this group at http://groups.google.com/group/haskell-server-pages.
> For more options, visit https://groups.google.com/groups/opt_out.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20130820/621d413e/attachment.htm>


More information about the Haskell-Cafe mailing list