News aggregator

Summer School on Bidirectional Transformations, Oxford,25-29th July 2016

General haskell list - Thu, 06/02/2016 - 4:52pm
Apologies if you have seen this before, but the early registration deadline (June 10th) is fast approaching for SSBX in Oxford. Please pass this on to anyone who may be interested (and consider coming yourself!). * SUMMER SCHOOL ON BIDIRECTIONAL TRANSFORMATIONS Lady Margaret Hall, Oxford, UK 25th to 29th July 2016 http://www.cs.ox.ac.uk/projects/tlcbx/ssbx/ TOPIC Bidirectional transformations (BX) are means of maintaining consistency between multiple information sources: when one source is edited, the others may need updating to restore consistency. BX have applications in databases, user interface design, model-driven development, and many other domains. This summer school is one of the closing activities on the "Theory of Least Change for BX" project at Oxford and Edinburgh (http://www.cs.ox.ac.uk/projects/tlcbx/). It brings together leading researchers in BX, spanning theory and practice, for a week of lectures in beautiful Oxford. It will be aimed at doctoral students in computer science, but wi
Categories: Incoming News

LOPSTR 2016: 2nd Call for Papers

General haskell list - Wed, 06/01/2016 - 7:21pm
[ Please distribute, apologies for multiple postings. ] ====================================================================== LOPSTR 2016: 2nd Call for Papers ====================================================================== 26th International Symposium on Logic-Based Program Synthesis and Transformation LOPSTR 2016 http://cliplab.org/Conferences/LOPSTR16/ Edinburgh, UK, September 6-8, 2016 (co-located with PPDP 2016 and SAS 2016) ====================================================================== DEADLINES: Abstract submission: June 7, 2016 Paper/Extended abstract submission: June 14, 2016 ====================================================================== INVITED SPEAKERS: Francesco Logozzo (Facebook, USA) [jointly with PPDP] Greg Morrisett (Cornell University, USA) [jointly with PPDP] Martin Vechev (ETH Zurich, Switzerland) [jointly with SAS ] =====
Categories: Incoming News

ANN: Haskell for Mac trials & educational discount

General haskell list - Wed, 06/01/2016 - 1:51am
Haskell for Mac, the Haskell IDE with interactive playgrounds, now offers a free 14 day trial and educational discounts: http://haskellformac.com Manuel
Categories: Incoming News

SIGPLAN Programming Languages Mentoring Workshop < at >ICFP

haskell-cafe - Tue, 05/31/2016 - 11:02pm
SIGPLAN Programming Languages Mentoring Workshop < at > ICFP Nara, Japan (co-located with ICFP 2016) Sunday, September 18th, 2016 http://conf.researchr.org/track/icfp-2016/PLMW-ICFP-2016/ We are pleased to invite students interested in functional programming research to the programming languages mentoring workshop at ICFP. The goal of this workshop is to introduce senior undergraduate and early graduate students to research topics in functional programming as well as provide career mentoring advice. We have recruited leaders from the functional programming community to provide overviews of current research topics and give students valuable advice about how to thrive in graduate school, search for a job, and cultivate habits and skills that will help them in research careers. This workshop is part of the activities surrounding ICFP, the International Conference on Functional Programming, and takes place the day before the main conference. One goal of the workshop is to make the ICFP conference more accessible t
Categories: Offsite Discussion

SIGPLAN Programming Languages Mentoring Workshop < at > ICFP

General haskell list - Tue, 05/31/2016 - 11:02pm
SIGPLAN Programming Languages Mentoring Workshop < at > ICFP Nara, Japan (co-located with ICFP 2016) Sunday, September 18th, 2016 http://conf.researchr.org/track/icfp-2016/PLMW-ICFP-2016/ We are pleased to invite students interested in functional programming research to the programming languages mentoring workshop at ICFP. The goal of this workshop is to introduce senior undergraduate and early graduate students to research topics in functional programming as well as provide career mentoring advice. We have recruited leaders from the functional programming community to provide overviews of current research topics and give students valuable advice about how to thrive in graduate school, search for a job, and cultivate habits and skills that will help them in research careers. This workshop is part of the activities surrounding ICFP, the International Conference on Functional Programming, and takes place the day before the main conference. One goal of the workshop is to make the ICFP conference more accessible t
Categories: Incoming News

2nd Call for Papers: WFLP 2016 - Update: EPTCS Proceedings

General haskell list - Mon, 05/30/2016 - 5:19pm
24th International Workshop on Functional and (Constraint) Logic Programming (WFLP 2016) https://wflp2016.github.io/ September 13-14, part of the Leipzig Week of Declarative Programming (L-DEC 2016) *********************************************************** Deadlines: * abstract submission: June 15, 2016 * paper submission: June 22, 2016 * notification: July 15, 2016 * camera-ready (workshop) version due: August 10, 2016 Papers can be directly accepted for publication in the formal EPTCS proceedings, or accepted for presentation at the workshop and invited to another round of reviewing after revision. More details on the web page. *********************************************************** The international workshops on functional and (constraint) logic programming aim at bringing together researchers, students, and practitioners interested in functional programming, logic programming, and their integration. This year the workshop is co-located with two other events as part of http://nfa.imn.htwk-le
Categories: Incoming News

DEADLINE EXTENSION: 19th ACM/IEEE MSWiM 2016 - Malta,Nov 13-17, 2016

General haskell list - Mon, 05/30/2016 - 4:05pm
=================================================== Call-For-Papers: 19th ACM/IEEE MSWiM 2016 Malta, Nov 13-17, 2016 http://www.mswimconf.com/2016 ==================================================== IMPORTANT: Submission deadline Extended: Paper registration through EDAS: June 8th, 2016 Paper Submission: June 12th, 2016 =================================================== ------ ACM/IEEE* MSWiM 2016 is the 19th Annual International Conference on Modeling, Analysis and Simulation of Wireless and Mobile Systems. MSWiM is an international forum dedicated to in-depth discussion of Wireless and Mobile systems, networks, algorithms and applications, with an emphasis on rigorous performance evaluation. MSWiM is a highly selective conference with a long track record of publishing innovative ideas and breakthroughs. MSWiM 2016 will be held Malta, Nov 13-17, 2016 Authors are encouraged to submit full papers presenting new research related to the theory or prac
Categories: Incoming News

Proposal: Add // for Data.Sequence

libraries list - Mon, 05/30/2016 - 2:21pm
BACKGROUND ---------- Data.Array provides (//) for incremental array updates. Data.Sequence lacks this useful functionality. SCOPE ----- Doing this efficiently may require that Data.Sequence access Data.IntMap. (It currently does not.) David Feuer commented: We may need to add some more splitting functions to Data.IntMap, if it supports them, but we probably want to do so anyway to match up with Data.Map. SOLUTIONS ----------- David Feuer offered the following implementation sketch. (See https://github.com/haskell/containers/issues/262) Collect all requested changes into an IntMap, then use something similar to Data.Sequence.splitMap with Data.IntMap.split to spread them through the tree. David Feuer commented: splitMap itself is overkill, because we'll likely be able to preserve whole subtrees. WHAT MIGHT BREAK ---------------- No anticipated breakage.
Categories: Offsite Discussion

configurable mapping between data declarations andgiven XML schema?

haskell-cafe - Mon, 05/30/2016 - 11:04am
Dear Cafe, I have a legacy XML schema, and some Haskell data declarations. I want to map bidirectionally between XML documents and data. I absolutely cannot change the schema. I could change the data declarations, but it would not help much, since I don't think there is any form of declaring data that would allow me to derive the transformations generically. So, I have a mess of ad-hoc transformations. What could be done about this? I think I need "generic with customization". More detail: https://github.com/jwaldmann/haskell-tpdb/issues/16 Comments appreciated. - J.W.
Categories: Offsite Discussion

Discussion: Add total indexing function to Data.Sequence

libraries list - Sun, 05/29/2016 - 10:21pm
Data.Sequence offers index :: Seq a -> Int -> a which throws an error if the index is out of range. I'd like to add something like indexMay :: Seq a -> Int -> Maybe a Aside from the safety factor, indexMay would offer a way to ensure the indexing occurs at a particular time. Much like Data.Vector.indexM, this can help prevent memory leaks. In fact, an analogue of indexM can be implemented in terms of indexMay: indexM :: Applicative m => Seq a -> Int -> m a indexM xs i = case xs `indexMay` i of Nothing -> error "indexM: index out of range" Just x -> pure x
Categories: Offsite Discussion

Proposal: Add insertAt to Data.Sequence

libraries list - Sun, 05/29/2016 - 9:32pm
I've come up with an implementation of insertAt :: Int -> a -> Seq a -> Seq a
Categories: Offsite Discussion

JSON parser that returns the rest of the string thatwas not used

haskell-cafe - Sun, 05/29/2016 - 6:09pm
As someone who spent many years putting data in S-expression format, it seems natural to me to write multiple S-expressions (or JSON objects) to a file, and expect a reader to be able to read them back one at a time. This seems comparatively uncommon in the JSON world. Accordingly, it looks like the most popular JSON parsing lib, Aeson, doesn't directly provide this functionality. Functions like decode just return a "Maybe a", not the left-over input, meaning that you would need to somehow split up your multi-object file before attempting to parse, which is annoying and error prone. It looks like maybe you can get Aeson to do what I want by dropping down to the attoparsec layer and messing with IResult. But is there a better way to do this? Would this be a good convenience routine to add to aeson in a PR? I.e. would anyone else use this? Thanks, -Ryan _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe< at >haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/h
Categories: Offsite Discussion

Testing for different dependency versions?

haskell-cafe - Sun, 05/29/2016 - 5:33am
Hi, I was wondering: what is the most practical way to go about testing or otherwise determining if your packaged library works with other dependency versions? E.g., cabal init specified base 4.6 because that is what happens to be installed on my Debian Jessie system, but that wouldn't even build on hackage.
Categories: Offsite Discussion

Quantum Programming EDSLs other than Quipper

haskell-cafe - Sat, 05/28/2016 - 4:04pm
Hi all, Quipper [1] is a well-known library that provides an EDSL for writing and simulating quantum algorithms in Haskell. I was wondering if there was any other attempt to design an EDSL in Haskell to express quantum algorithms. In particular, Quipper is not able to statically ensure that the algorithm written is physically meaningful, as one could violate the "non-cloning property", for example (a qubit cannot be copied, for those who do not speak quantumly). Violations like this are detected at runtime when simulating the algorithm or when producing the corresponding circuit as output. Authors of Quipper already said that some of those properties could be possible to check “if Haskell had linear types”. The point is that Haskell's support for dependently typed programming has grown quite a lot in the last years, and I think that, at least theoretically, something better can now be achieved. So do anyone know any more recent attempt to express quantum computations in an Haskell EDSL that levera
Categories: Offsite Discussion

Reminder: Functional High-Performance Computing 2016

haskell-cafe - Sat, 05/28/2016 - 3:58pm
Dear colleagues, A reminder of the approaching paper deadline (10th June) for FHPC 2016 ... ====================================================================== CALL FOR PAPERS FHPC 2016 The 5th ACM SIGPLAN Workshop on Functional High-Performance Computing Nara, Japan September 22, 2016 https://sites.google.com/site/fhpcworkshops/ Co-located with the International Conference on Functional Programming (ICFP 2016) Submission Deadline: Friday, 10 June, 2016 (anywhere on earth) ====================================================================== The FHPC workshop aims at bringing together researchers exploring uses of functional (or more generally, declarative or high-level) programming technology in application domains where high performance is essential. The aim of the meeting is to enable sharing of results, experien
Categories: Offsite Discussion

Higher order type functions

haskell-cafe - Sat, 05/28/2016 - 1:22am
Hi folks! I'm playing with GHC 8 and have the following type family definend: type family InsertSorted (gt :: k -> k -> Bool) (a :: k) (xs :: [k]) :: [k] where InsertSorted f a '[] = '[a] InsertSorted f a (x ': xs) = If (f a x) (x ': InsertSorted f a xs) (a ': x ': xs) With appropriate type functions, I can evaluate this in GHCi with `:kind!` and it does what I want: λ> :kind! InsertSorted GreaterThan One '[Two, Four] InsertSorted GreaterThan One '[Two, Four] :: [Face] = '['One, 'Two, 'Four] λ> :kind! InsertSorted GreaterThan Queen '[Two, Four] InsertSorted GreaterThan Queen '[Two, Four] :: [Face] = '['Two, 'Four, 'Queen] However, I get an error if I try to use this in a type signature. This code: data Deck (b :: [k]) where Empty :: Deck '[] (:::) :: CardT s f -> Deck xs -> Deck (InsertSorted GreaterThan '(s, f) xs) gives me this error: • The type family ‘GreaterThan’ should have 2 arguments, but has been given none • In the definition of data con
Categories: Offsite Discussion

Announce: Haskell Platform 8.0.1

General haskell list - Fri, 05/27/2016 - 8:14pm
On behalf of the Haskell Platform team, I'm happy to announce the release of Haskell Platform 8.0.1 Now available at https://www.haskell.org/platform/ This platform includes features initially planned in the "Improving the 'Get Haskell Experience'" proposal of June 2015. [1] * Minimal as well as Full distributions. The minimal distribution only includes GHC core libraries as well as additional tools. This is now the recommended distribution. The Full distribution remains an option for those who want a one-step installer with the broader set of platform libraries preinstalled. * Inclusion of the Stack tool for developing Haskell projects [2] Other highlights of this release include the following * The new cabal 1.24 including the great "new-build" tech preview of nix-like build dependency management [3] * On windows, a cabal/msys setup that allows packages such as "network" to build "out of the box". (almost*) * At long last, prebuilt Linux 32 bit platform installers Changes to Conte
Categories: Incoming News

Proposal: Add `maxOn` and `minOn` functions to Data.Ord

libraries list - Fri, 05/27/2016 - 7:51pm
I think these are useful in general, and that they would make a good addition to `Data.Ord`. The names are inspired by `sortOn`. Definitions: ``` minOn :: Ord b => (a -> b) -> a -> a -> a minOn f x y = case comparing f x y of LT -> x _ -> y maxOn :: Ord b => (a -> b) -> a -> a -> a maxOn f x y = case comparing f x y of GT -> x _ -> y ``` These don't need to be the exact definitions, but they convey the semantics I'm looking for. _______________________________________________ Libraries mailing list Libraries< at >haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries
Categories: Offsite Discussion

read "2" in a "void" context?

haskell-cafe - Fri, 05/27/2016 - 7:28pm
Hi fellow Haskellers! If I bring up ghci and evaluate `read 2` I get the error "Prelude.read: no parse" GHCi, version 7.10.2: http://www.haskell.org/ghc/ :? for help Prelude> read "2" *** Exception: Prelude.read: no parse Exactly how is this message coming about? I understand that `read` needs a return type in order to determine which type class instance to run. So, in this case, which type is `read` being asked to return? Thanks, Erik _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe< at >haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
Categories: Offsite Discussion

Munich Haskell Meeting,2016-05-30 < at > 19:30 Max Emanuel Brauerei

haskell-cafe - Fri, 05/27/2016 - 2:05pm
Dear all, Next week, our monthly Munich Haskell Meeting will take place again on Monday, May 30 at *Max Emanuel Brauerei* at 19h30. For details see here: http://chneukirchen.github.io/haskell-munich.de/dates.html **Please note the changed location!** If you plan to join, please add yourself *quickly* to this dudle so we can reserve enough seats! It is OK to add yourself to the dudle anonymously or pseudonymously. https://dudle.inf.tu-dresden.de/haskell-munich-may-2016/ Everybody is welcome! cu,
Categories: Offsite Discussion