News aggregator

Combine type family return value

haskell-cafe - Thu, 10/09/2014 - 6:12pm
Hello! Following code is my attempt to comprehend type families and data kinds. I want to annotate boolean formula with variables it contains, so I get function `value` checked at compile time. `value` should return Bool, if no variables are present in formula, list of variables otherwise. Of course, `value` can just return Either [Var] Bool, but I want to get Type-level programming-fu. {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE StandaloneDeriving #-} {-# LANGUAGE GADTs #-} {-# LANGUAGE UndecidableInstances #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE DataKinds #-} data Nat = Zero | Succ Nat type family Plus (x :: Nat) (y :: Nat) :: Nat type instance Plus Zero x = x type instance Plus (Succ x) y = Plus x (Succ y) type family Multi (x :: Nat) (y :: Nat) :: Nat type instance Multi Zero x = Zero type instance Multi (Succ x) y = Plus y (Multi x y) type One = Succ Zero type Two = Succ One type Three = Succ Two type Power2 a = Power Two a type family Power (n :: Nat) (k :: Nat) :: Nat type insta
Categories: Offsite Discussion

ANN: FunGEn game engine 0.4.6 released, now on github

haskell-cafe - Thu, 10/09/2014 - 5:54pm
FunGEn 0.4.3 was uninstallable from hackage for a long time (and no-one noticed). Now, thanks to gelisam's bug report and some further cleanup work, I'm happy to announce that FunGEn 0.4.6 is available! I've also moved it from darcs hub to github. FunGEn (Functional Game Engine) is a BSD-licensed, cross-platform, OpenGL/GLUT-based, non-FRP game engine/framework written in Haskell. Created by Andre Furtado in 2002, it's the oldest Haskell game engine, and with very few dependencies and two example games, it's one of the easiest ways to get started with Haskell game development. It provides: - Initialization, updating, removing, rendering and grouping routines for game objects - Definition of a game background (or map), including texture-based maps and tile maps - Reading and interpretation of the player's keyboard and mouse input - Collision detection - Time-based functions and predefined game actions - Loading and displaying of 24-bit bitmap files - Some debugging and game performance evaluati
Categories: Offsite Discussion - Thu, 10/09/2014 - 12:01pm
Categories: Offsite Blogs - Thu, 10/09/2014 - 12:01pm
Categories: Offsite Blogs

Haskell Weekly News: Issue 309

General haskell list - Thu, 10/09/2014 - 5:07am
Welcome to issue 309 of the HWN, an issue covering crowd-sourced bits of information about Haskell from around the web. This issue covers from September 28 to October 4, 2014 Quotes of the Week * Uh... I'ma have to read the IRC logs... No good quotes < at >remember'd Top Reddit Stories * Announcing needle: ASCII-fied arrow notation Domain:, Score: 103, Comments: 119 Original: [1] On Reddit: [2] * How we might abolish Cabal Hell, part 1 Domain:, Score: 95, Comments: 69 Original: [3] On Reddit: [4] * After some failed attempts to learn Parsec I came across this incredibly patient tutorial and now I'm writing parsers! Domain:, Score: 79, Comments: 17 Original: [5] On Reddit: [6] * Neil Mitchell's Haskell Blog: Why Traversable/Foldable should not be in the Prelu
Categories: Incoming News

Looking for a Google Hangouts tutor/advisor onHaskell

haskell-cafe - Thu, 10/09/2014 - 4:01am
I am looking for a Haskell developer who can review my code, suggest improvements, and generally help me become a better Haskell programmer more quickly. As such, you should be very proficient with Haskell yourself. Maybe you do Haskell work professionally; maybe you have contributed to a couple open-source projects, maybe you're a well-known Haskell blogger, writer or teacher. I am a beginner, although I have been programming professionally for many years. I do have a basic foundation in functional programming languages, including Haskell, but most of my background is with dynamic languages like Ruby and Python. I'm thinking we would meet once a week on a Google Hangout (or other technology) for an hour or so and I'd show you my code and have you review it. (Take it away and mark it up if you want.) I'd ask questions and we can discuss them. You can tell me about anything you think I might need to know to be more effective. I might also email questions to you or ask for more time than described abo
Categories: Offsite Discussion

Philip Wadler: SNAPL

Planet Haskell - Thu, 10/09/2014 - 3:39am

SNAPL will take place 3-6 May 2015 at Asilomar.
SNAPL provides a biennial venue to focus on big-picture questions, long-running research programs, and experience reports in programming languages. The ideal SNAPL paper takes one of two forms:
  • A promising idea that would benefit from discussion and feedback.
  • A paper about an ongoing research project that might not be accepted at a traditional conference.
Examples include papers that
  • lay out a research roadmap
  • summarize experiences
  • present negative results
  • discuss design alternatives
SNAPL is interested in all aspects of programming languages. The PC is broad and open-minded and receptive to interesting ideas that will provoke thought and discussion.
Interesting papers would combine the specific with the general. Submissions are limited to five pages (excluding bibliography), and must be formatted using ACM SIG style. The final papers can be up to 10 pages in length. Accepted papers will be published on an open-access site, probably arXiv CoRR.
To encourage authors to submit only their best work, each person can be an author or co-author of a single paper only. SNAPL will prefer experienced presenters and each submission must indicate on the submission site which co-author will present the paper at the conference.
SNAPL also accepts one-page abstracts. Abstracts will be reviewed lightly and all submitted abstracts will be published on the SNAPL 2015 web page. Authors of selected abstracts will be invited to give a 5-minute presentation at the gong show at the conference.
SNAPL is unaffiliated with any organization. It is a conference for the PL community organized by the PL community.
Important DatesSubmission: January 6, 2015
Decisions announced: February 20, 2015
Final versions due: March 20, 2015
Conference: May 3-6, 2015
Categories: Offsite Blogs

Jop opening: web developers (with a taste forHaskell!) at Anchor

haskell-cafe - Thu, 10/09/2014 - 2:26am
Web Developers and Web Designers ================================ The engineering department at Anchor is building the analytics capabilities, internal systems, cloud infrastructure, deployment tooling, and operations practices that will be needed to take the company to the next level. These things all need front-ends. It goes without saying that the web is the platform for bringing new products to market, but we're a hosting company; most of our staff are operations-focused and our customers are too. What they really want are better tools to manipulate infrastructure. And even though Real Sysadmins™ prefer command-line tools (we build those too) there's still the need to cleanly present and visualize information, and the web is the place to do that. Haskell is the working language for internal development; the benefits of type safety, resilience when refactoring, and stability over time added to the power of functional programming has already paid dividends. An open question is how far we can push s
Categories: Offsite Discussion