Changes between Version 43 and Version 44 of Status/May16

May 4, 2016 5:13:58 PM (3 years ago)



  • Status/May16

    v43 v44  
    2727  - A new '''DeriveLift language extension''', allowing the `Lift` type class from `Language.Haskell.TH.Syntax` to be derived automatically. This was introduced in the spirit of `DeriveDataTypeable` and `DeriveGeneric` to allow easier metaprogramming, and to allow users to easily define `Lift` instances without needing to depend on the existence of Template Haskell itself (see #1830).
    29   - '''More Backpack improvements'''. There's a new user-facing syntax which allows multiple modules to be defined a single file, and we're hoping to release at least the ability to publish multiple "units" in a single Cabal file.
    3129  - '''Support for DWARF-based stacktraces''' ([wiki:DWARF]). Haskell has at long last gained the ability to collect stack-traces of running programs. While still experimental, `base` now includes an interface which user code can use to request a representation of the current execution stack when running on a supported machine (currently Linux x86-64). Furthermore, the runtime system will now provide a backtrace of the currently running thread when thrown a `SIGUSR2` signal. Note that this functionality is highly experimental and there are some known issues which can potentially threaten the stability of the program.
    5351  GHC 8.2 will address this by introducing indexed type representations, leveraging the type-checker to verify programs using type reflection. This allows facilities like `Data.Dynamic` to be implemented in a fully type-safe manner. See the [[|paper]] for an description of the proposal and the [[|Wiki]] for the current status of the implementation.
    55   - Backpack continues its march forward (Edward Z Yang)
     53  - Backpack is targeting to be merged in GHC 8.2. More to come here. (Edward Z Yang)
    5654  - Merge `Bifoldable` and `Bitraversable` into `base` (Edward Kmett, Ryan Scott)
    5755  - Generalize the `deriving` algorithms for `Eq`, `Functor`, etc. to be able to derive the data types in `Data.Functor.Classes` (`Eq1`, `Eq2`, etc.), `Bifunctor`, `Bifoldable`, and `Bitraversable` (Ryan Scott)