← All posts tagged ghc

PineappleZombie

Вышел новый GHC с новыми вкусными расширениями, улучшениями в GHCi и стектрейсами

The GHC Team is pleased to announce a new major release of GHC, 7.4.1.
Here are some of the highlights of the 7.4 branch since 7.2 and 7.0:
* The Num class no longer has Eq or Show superclasses.
* There is a new feature Safe Haskell (-XSafe, -XTrustworthy, -XUnsafe).
The design has changed since 7.2.
* There is a new feature kind polymorphism (-XPolyKinds).
A side-effect of this is that, when the extension is not enabled, in
certain circumstances kinds are now defaulted to * rather than being inferred.
* There is a new feature constraint kinds (-XConstraintKinds).
* It is now possible to give any sort of declaration at the ghci prompt.
For example, you can now declare datatypes within ghci.
* The profiling and hpc implementations have been merged and overhauled.
Visible changes include renaming of profiling flags, and a new
semantics for the cost-centre stacks (which should in most cases
result in more useful and intuitive profiles). The +RTS -xc flag now
also gives a stack trace.
* It is now possible to write compiler plugins.
* DPH support has been significantly improved.
* There is now preliminary support for registerised compilation using
LLVM on the ARM platform.

Full release notes are here: haskell.org

PineappleZombie

Ха-ха-ха

bench "eta" $ nf variance sample — Тут GHC не специализирует variance и всё тормозит как не знаю что

bench "lambda" $ nf (\x -> variance x) sample — А тут специализирует и всё работает быстро.

P.S. GHC-7.2.2 генерит более эффективный код для числодробления чем GHC-7.0.4

PineappleZombie

The GHC Team is pleased to announce a new major release of GHC, 7.2.1.

The 7.2 branch is intended to be more of a "technology preview" than
normal GHC stable branches; in particular, it supports a significantly
improved version of DPH, as well as new features such as compiler
plugins and "safe Haskell". The design of these new features may evolve
as we get more experience with them. See the release notes for more
details of what's new and what's changed.

We are also using this branch as an opportunity to work out the best
workflows to use with git.

We expect the 7.2 branch to be short-lived, with 7.4.1 coming out
shortly after ICFP as normal.

Full release notes are here: haskell.org

PineappleZombie

Анонсирован GHC-7.0.4 rc1: haskell.org



Release notes:

* A floating point regression in 7.0.3 affecting x86 has been
fixed (#5149).
* The GHCi linker now handles partially stripped object files
(#5004). This fixes loading the ghc package in ghci when it's
been stripped, which is often the case in Linux distribution
packages.
* A runtime system bug with large heaps has been fixed (#5086).
* A runtime system bug when heap profiling has been fixed (#5127).
* A runtime system bug when heap profiling has been fixed (#5127).
* A runtime system bug, which caused incorrect results and segfaults
when using FFI callbacks, has been fixed.
* A runtime system bug, which occasionally caused parallel programs
to <<loop>> when using -feager-blackholing, has been fixed (#5226).
* Incorrect directory permissions when installing have been fixed
(#4982).
* Some improvements have been made to the new Cabal testsuite support.
* Cabal is now 1.10.2.0 (was 1.10.1.0).


Thanks
Ian, on behalf of the GHC team