# News aggregator

### GHC.Generics and instances of Functor, Applicative, etc?

I'm using GHC.Generics and have noticed that the data types defined there
don't have instances of the standard classes (at least not defined in that
module), such as Functor, Applicative, Foldable and Traversable. It'd be
very useful to be able to rely on such instances, so that one can define
instances of custom types via instances of the generic types. (Hopefully,
the compiler can remove most or all conversion overhead) Is there any
reason not to add these generic instances?

Categories: Offsite Discussion

### Typed up CRUD SPA with Haskell and Elm - Part 2: Persistence up and running

Categories: Incoming News

### MSFP 2016: Final Call for Papers

Sixth Workshop on
MATHEMATICALLY STRUCTURED FUNCTIONAL PROGRAMMING
8 April 2016, in Eindhoven, The Netherlands
A satellite workshop of ETAPS 2016
http://msfp2016.bentnib.org/
NOTE: the deadline for paper submissions has been extended by one day
to:
*Monday 18th January*
Prior submission of an abstract is not required
The sixth workshop on Mathematically Structured Functional Programming
is devoted to the derivation of functionality from structure. It is a
celebration of the direct impact of Theoretical Computer Science on
programs as we write them today. Modern programming languages, and in
particular functional languages, support the direct expression of
mathematical structures, equipping programmers with tools of remarkable
power and abstraction. Where would Haskell be without monads? Functional
reactive programming without temporal logic? Call-by-push-value without
adjunctions? The list goes on. This workshop is a forum for researchers
who seek to reflect mathematical phenomena in data and con

Categories: Incoming News

### Proposal: Add Peano numbers to base

I have seen these redefined many times now. Examples:
https://hackage.haskell.org/package/numericpeano-0.2.0.0/docs/Numeric-Peano.html#t:Nat
https://hackage.haskell.org/package/numeric-prelude-0.4.2/docs/Number-Peano.html#t:T
https://hackage.haskell.org/package/type-fun-0.0.1/docs/TypeFun-Data-Peano.html#t:N
https://hackage.haskell.org/package/number-0.1.1.0/docs/Data-Number-Peano.html#t:Nat
https://hackage.haskell.org/package/Peano-0.0.4/docs/Data-Peano.html#t:Peano
I often see them used as DataKinds. Too, operations on them can be
lazy, which is sometimes useful.
I filed a ticket: https://ghc.haskell.org/trac/ghc/ticket/11402
Discussion period: 2 weeks

Categories: Offsite Discussion

### ANN: true-name 0.1.0.0 released

It is with some shame that I announce ‘true-name’, a package to assist
one in violating those pesky module abstraction boundaries via the
magick of Template Haskell.
http://hackage.haskell.org/package/true-name
Take ‘Control.Concurrent.Chan’ for example; you can get your grubby
mitts on the ‘Chan’ data constructor, despite it not being exported.
Here we pattern match on it, and bind ‘chanR’ and ‘chanW’ to the
‘MVar’s containing the read and write ends of the channel respectively:
Now, the type of ’chanR’ references the unexported ‘Stream’ and
‘ChItem’ types. We need the ‘ChItem’ data constructor―which is
hidden under a few indirections—but that's not a problem:
This gives us a rather dodgy ‘peekChan’. This sort of thing is usually
a Bad Idea™, but may sometimes be more palatable than the alternatives.
Full example: https://github.com/liyang/true-name/blob/master/sanity.hs
Taking another example, suppose we want the ‘Array’ type constructor
hidde

Categories: Incoming News

### Eq1, Ord1, Show1: move from eq1, compare1, showsPrec1 to liftEq, liftCompare, liftShowsPrec

In transformers-0.5:Data.Functor.Classes class methods like eq1 are
replaced by liftEq.
With transformers-0.4 I could define:
data T a = complicated definition ...
deriving (Eq, Ord, Show)
instance Eq1 T where eq1 = (==)
instance Ord1 T where compare1 = compare
instance Show1 T where showsPrec1 = showsPrec
In transformers-0.5 it seems that I have to implement Eq1, Ord1, Show1
instances manually. Is there some assistance to define eq1 and compare1
for an ADT? What are the use cases where eq1 was not powerful enough and
liftEq is needed?

Categories: Offsite Discussion

### suppress warning "Defined but not used: type variable ‘x’" in GHC-8.0

GHC-8.0 emits several new warnings of this kind:
Defined but not used: type variable ‘x’
for declarations like
type instance Snd x y = y
Enthusiastically, I started to replace unused type function arguments by
underscores, only to find out that older GHC versions do not accept that.
With what option can I disable this warning? Or can it be removed from
-Wall for now?_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users< at >haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users

Categories: Offsite Discussion

### New gtk2hs 0.12.4 release

Thanks to John Lato and Duncan Coutts for the latest bugfix release! The latest packages should be buildable on GHC 7.6, and the cairo package should behave a bit nicer in ghci on Windows. Thanks to all!

~d

Categories: Incoming News