Issue 133
Welcome to another issue of Haskell Weekly! Haskell is a safe, purely functional programming language with a fast, concurrent runtime. This is a weekly summary of what’s going on in its community.
Featured
-
A very simple prime sieve in Haskell by Donnacha Oisín Kidney
I’m going to try today to show a very simple prime sieve that (hopefully) rivals the simplicity of the definition above.
-
Announcing Validity version 0.9.0.0: Validity of
Double
by Tom Sydney KerckhoveThe
Validity
instance forDouble
has been highly controversial. The debate centers around whetherNaN
should be considered a valid value of typeDouble
. -
Existential quantification by Mark Karpov
In this post I’m going to give an idea of how existentials can be useful in Haskell. I still remember the confusion that I felt when I first ran into rank-N types and the terms universal and existential quantification.
-
GTK+ programming with Haskell by Oskar Wickström
As described on its webpage, GTK+, or the GIMP Toolkit, is a multi-platform toolkit for creating user interfaces. In this video we will use the
haskell-gi
suite of packages to build a simple GTK+ application with Haskell. -
Introduction to state machine testing: Part 2 by Andrew McMiddlin
In my first post on state machine testing I gave a high level view of what state machine testing is and some of the prerequisite knowledge. Now we’re going to start getting into the nuts and bolts of how state machine testing with
hedgehog
works. -
REST-ish Services in Haskell: Part 2 by Vados
Today we’re going to build castles in the sand — building up the domain of the solution we’re solving with as much help we can get from the formalisms in Haskell.
-
Thinking with Types: Type-Level Programming in Haskell by Sandy Maguire
This book aims to be the comprehensive manual for type-level programming. It’s about getting you from a competent Haskell programmer to one who convinces the compiler to do their work for them.
-
Typed holes and valid hole fits by Matthías Páll Gissurarson
In this post, I will try to explain typed-holes in the context of GHC, and some cool new contributions that were adopted by GHC that I proposed and implemented, namely, valid hole fits and refinement hole fits to make them even more useful for developers.
Jobs
-
Senior back-end engineer at CentralApp in Brussels
If you’re someone who likes functional programming, you get to work in Scala and Haskell in a fast-paced but perfectionist environment. We’re a small team and we’re growing fast, or at least that’s the plan. We strongly believe in investing in the team and building a culture that is product and engineering focused.
In brief
- A touch of topological quantum computation in Haskell: Part 1
- Elm IV: Navigation
- GHC proposal: Add row polymorphism to Haskell
- Introduction to Cryptonite (video)
- Request for feedback: Haddock theme redesign
- Using PureScript to create a domain-specific language for building forms with validation
- What FP can learn from Smalltalk (video)
- Why I never finish my Haskell programs: Part 3 of ∞
- Zippers for non-inductive types
Package of the week
This week’s package of the week is Physics, a library for working with quantities in a performant and type-safe manner.
Call for participation
- alga: Fix Show instances
- haskell-cgi: Network.CGI.Compat uses deprecated functions from “network” library
Events
North America
- 2018-11-15 in Raleigh, NC, USA by Raleigh Haskell Meetup: (hack . yack)
- 2018-11-15 in Las Vegas, NV, USA by Las Vegas Functional Programming User Group: Functional Programming Meetup
- 2018-11-15 in San Diego, CA, USA by San Diego Functional Programmers: November Meetup - Algorithms & DDD
- 2018-11-17 in Chilliwack, BC, Canada by ChilliHask Haskell User Group: Weekly Haskell Coding Meetup
- 2018-11-17 in Boston, MA, USA by Weekly Functional Programming Meetup: Hang out, chat FP, work on some code
- 2018-11-17 in Bellevue, WA, USA by Seattle Area Haskell Users’ Group: General discussion
- 2018-11-19 in Tulsa, OK, USA by Tulsa Lambda Lunch: Let’s Learn PureScript Together! (Chapter 4)
- 2018-11-19 in Portland, OR, USA by Portland Functional Programming Study Group: PDX Func Practice Track - Parallel and Concurrent Programming in Haskell
- 2018-11-19 in Irvine, CA by Orange Combinator - Functional Programming In OC: Combinating - The Weekly Function
- 2018-11-19 in Chicago, IL, USA by Chicago Functional Programming: Relit: Typed Literal Macros for Reason, presented by Cyrus Omar
- 2018-11-20 in Vancouver, BC, Canada by Vancouver Functional Programmers: Haskell Lunch Study Group • Fall ’18 Cohort
- 2018-11-20 in Minneapolis, USA by HaskellMN: HaskellMN Monthly Meetup
- 2018-11-21 in Austin, TX, USA by Austin Haskell Users Group: Haskell Beginner-Friendly Lab
Europe
- 2018-11-15 in Karlsruhe, Germany by Karlsruhe Haskell Meetup: Fahrt zur munihac.de
- 2018-11-15 in Warsaw, Poland by Monadic Warsaw: Monadic Warsaw #19
- 2018-11-17 in Berlin, Germany by Study Haskell: Weekly Haskell-studying session
- 2018-11-20 in Hamburg, Germany by Lambda Pi: Final 2018 Meetup
- 2018-11-20 in 28046 Madrid, Spain by Madrid Haskell Users Group: Desarrollando rápidamente aplicaciones con Haskell y Transient
- 2018-11-21 in Göteborg, Sweden by Elm Gothenburg: I tried Elm and you won’t believe what happened next…
Asia
- 2018-11-17 in Bangalore, India by The Bangalore Haskell User Group: Build a JSON parser with applicative parsing
- 2018-11-18 in 東京都, Japan by Tokyo Haskell Meetup: November 2018
- 2018-11-18 in Delhi, India by Reactive Application Programmers in Delhi NCR: TECH TRIVENI - FUNCTIONAL . BIG DATA . REACTIVE
- 2018-11-19 in Perth, Australia by Perth Functional Programmers: Haskell study group