... | @@ -30,7 +30,7 @@ However, we still need help with it all. GHC is a community project, and as you |
... | @@ -30,7 +30,7 @@ However, we still need help with it all. GHC is a community project, and as you |
|
|
|
|
|
- **Partial type signatures** - Thomas Winant and Dominique Devriese are working on partial type signatures for GHC. A partial type signature is a type signature that can contain *wildcards*, written as underscores. These wildcards can be types unknown to the programmer or types he doesn't care to annotate. The type checker will use the annotated parts of the partial type signature to type check the program, and infer the types for the wildcards. A wildcard can also occur at the end of the constraints part of a type signature, which indicates that an arbitrary number of extra constraints may be inferred. Whereas `-XTypedHoles` allow holes in your terms, `-XPartialTypeSignatures` allow holes in your types. The design as well as a working implementation are currently being simplified [PartialTypeSignatures](partial-type-signatures). This will
|
|
- **Partial type signatures** - Thomas Winant and Dominique Devriese are working on partial type signatures for GHC. A partial type signature is a type signature that can contain *wildcards*, written as underscores. These wildcards can be types unknown to the programmer or types he doesn't care to annotate. The type checker will use the annotated parts of the partial type signature to type check the program, and infer the types for the wildcards. A wildcard can also occur at the end of the constraints part of a type signature, which indicates that an arbitrary number of extra constraints may be inferred. Whereas `-XTypedHoles` allow holes in your terms, `-XPartialTypeSignatures` allow holes in your types. The design as well as a working implementation are currently being simplified [PartialTypeSignatures](partial-type-signatures). This will
|
|
|
|
|
|
- **Binary literals** ([\#9224](https://gitlab.haskell.org/ghc/ghc/issues/9224)) - Herbert Valerio Riedel implemented the `-XBinaryLiterals` language extension which finally closes the syntax gap relative to other languages which allow to write base-2 literals such as `0b11001001`. This is in GHC 7.10.
|
|
- **Binary literals** (#9224) - Herbert Valerio Riedel implemented the `-XBinaryLiterals` language extension which finally closes the syntax gap relative to other languages which allow to write base-2 literals such as `0b11001001`. This is in GHC 7.10.
|
|
|
|
|
|
- **Propositional equality for `GHC.Generics` metadata** - Gabor Greif is working on a conservative approach to retrofit the metadata types generated by `-XDeriveGeneric` with a runtime-observable type equality. The feature is discussed under [GenericsPropositionalEquality](generics-propositional-equality).
|
|
- **Propositional equality for `GHC.Generics` metadata** - Gabor Greif is working on a conservative approach to retrofit the metadata types generated by `-XDeriveGeneric` with a runtime-observable type equality. The feature is discussed under [GenericsPropositionalEquality](generics-propositional-equality).
|
|
|
|
|
... | @@ -42,7 +42,7 @@ However, we still need help with it all. GHC is a community project, and as you |
... | @@ -42,7 +42,7 @@ However, we still need help with it all. GHC is a community project, and as you |
|
|
|
|
|
- **CPU-specific optimizations** - Austin Seipp is currently investigating the implementation of CPU-specific optimisations for GHC, including new `-march` and `-mcpu` flags to adjust tuning for a particular processor. Right now, there is some preliminary work towards optimizing copies on later Intel machines. There's interest in expanding this further as well.
|
|
- **CPU-specific optimizations** - Austin Seipp is currently investigating the implementation of CPU-specific optimisations for GHC, including new `-march` and `-mcpu` flags to adjust tuning for a particular processor. Right now, there is some preliminary work towards optimizing copies on later Intel machines. There's interest in expanding this further as well.
|
|
|
|
|
|
- **Changes to static closures for faster garbage collection** - Edward Yang is working on an overhaul of how static closures represented at runtime to eliminate some expensive memory dereferences in the GC hotpath. The initial results are encouraging: these changes can result in an up to 8% in the runtime of some GC heavy benchmarks, see [\#8199](https://gitlab.haskell.org/ghc/ghc/issues/8199).
|
|
- **Changes to static closures for faster garbage collection** - Edward Yang is working on an overhaul of how static closures represented at runtime to eliminate some expensive memory dereferences in the GC hotpath. The initial results are encouraging: these changes can result in an up to 8% in the runtime of some GC heavy benchmarks, see #8199.
|
|
|
|
|
|
- **New, smaller array type** - Johan Tibell has added a new array type, `SmallArray#`, which uses less memory (2 words) than the `Array#` type, at the cost of being more expensive to garbage collect for array sizes larger than 128 elements. This is in GHC 7.10.
|
|
- **New, smaller array type** - Johan Tibell has added a new array type, `SmallArray#`, which uses less memory (2 words) than the `Array#` type, at the cost of being more expensive to garbage collect for array sizes larger than 128 elements. This is in GHC 7.10.
|
|
|
|
|
... | @@ -50,7 +50,7 @@ However, we still need help with it all. GHC is a community project, and as you |
... | @@ -50,7 +50,7 @@ However, we still need help with it all. GHC is a community project, and as you |
|
|
|
|
|
- **DWARF-based stack tracing** - Peter Wortmann and Arash Rouhani (with support from the Simons) are working on enabling GHC to generate and use DWARF debugging information. This should allow us to obtain stack traces and do profiling without the need for instrumentation. The first stages of this work should land in 7.10, but it's not clear if the full feature set will.
|
|
- **DWARF-based stack tracing** - Peter Wortmann and Arash Rouhani (with support from the Simons) are working on enabling GHC to generate and use DWARF debugging information. This should allow us to obtain stack traces and do profiling without the need for instrumentation. The first stages of this work should land in 7.10, but it's not clear if the full feature set will.
|
|
|
|
|
|
- **Reimplemented GMP-based `Integer` backend ([\#9281](https://gitlab.haskell.org/ghc/ghc/issues/9281))** - Herbert Valerio Riedel is working on this to provide a GMP-based `Integer` backend not relying on registering GHC-specific [custom GMP memory allocators](https://gmplib.org/manual/Custom-Allocation.html) which cause problems when linking to other C-code also using GMP unaware of GHC's memory management.
|
|
- **Reimplemented GMP-based `Integer` backend (#9281)** - Herbert Valerio Riedel is working on this to provide a GMP-based `Integer` backend not relying on registering GHC-specific [custom GMP memory allocators](https://gmplib.org/manual/Custom-Allocation.html) which cause problems when linking to other C-code also using GMP unaware of GHC's memory management.
|
|
|
|
|
|
## Frontend, build-system, and miscellaneous changes
|
|
## Frontend, build-system, and miscellaneous changes
|
|
|
|
|
... | | ... | |