News aggregator

Post for Haskellers Mail List

General haskell list - Thu, 12/05/2013 - 11:10am
Good morning, I would like to post the below to the Haskell Mail List: HASKELLERS REQUIRED!! Career Opportunities in Cambridge (UK) I am currently hiring for Senior Software Engineers, Principal Software Engineers and Software Architects with proficiency in Haskell programming. This is a fantastic opportunity to join a global, world-leading technology business working on cutting-edge product development in the field of HPC and Big Data. Packages are highly flexible to attract the best talent. For more information - get in touch with Katy Ovens on 02392 322 308 or send a message to kovens< at > Katy Ovens , CertRP Lead Account Manager - Engineering 023 9232 2308 07511 011 918 kovens< at > 1 Quay Point, Northarbour Road, Portsmouth, PO6 3TD, UK - Join our social networks:!/STR_Group All detailed pricing models wi
Categories: Incoming News

Proposal: Add a strict version of <$> for monads

libraries list - Fri, 11/29/2013 - 2:07pm
Hi all, I propose we add a strict version of <$> to base: -- | A strict version of 'Data.Functor.<$>' for monads. (<$!>) :: Monad m => (a -> b) -> m a -> m b f <$!> m = do a <- m return $! f a {-# INLINE (<$!>) #-} infixl 4 <$!> It works on Monads instead of Functors as required by us inspecting the argument. This version is highly convenient if you want to work with functors/applicatives in e.g. parser and avoid spurious thunks at the same time. I realized that it was needed while fixing large space usage (but not space-leak) issues in cassava. I believe Edward Kmett discovered the need for it independently as well. Deadline: 3 weeks Cheers, Johan _______________________________________________ Libraries mailing list Libraries< at >
Categories: Offsite Discussion

role signatures in libraries

libraries list - Wed, 11/27/2013 - 8:05pm
Hi libraries, It seems that the syntax and semantics of role annotations has settled, and so it's time to add role annotations to various libraries. Here are the key ideas: tl;dr: Add nominal role annotations for abstract datatypes whose data has an invariant based on a class instance. Set and Map are top candidates. - We have three notions of equality: nominal, representational, and phantom. - Type equality as we know it is called *nominal*. - A newtype is considered *representationally* equal to its representation type. * Thus, if we have `newtype Age = MkAge Int`, `Age` and `Int` are representationally equal. - Any two types are "phantomly" equal. * See below for an illustrative example of why this notion is useful. - Every type parameter of every datatype and class is assigned a role. A parameter's role says what notion of equality must hold to show that two instantiations of the datatype are representationally equal. * Say we have `Bar a` where a's role is nominal. That means that `Bar A
Categories: Offsite Discussion

New gtk2hs 0.12.4 release

gtk2hs - Wed, 11/21/2012 - 12:56pm

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!


Categories: Incoming News