Issue 149
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
-
Aeson’s mysterious lazy parsing by Han Dong Zhu
Aeson provide two flavor of parsing entrances:
decode
anddecode'
. The document ondecode
says that “This function parses immediately, but defers conversion.” -
Beeraffe by Jasper Van der Jeugt
This weekend, I finished a silly little game in PureScript called Beeraffe. In this blogpost, I want to give some more background information on how this game came to be.
-
Exceptions tutorial from IH book by Mark Karpov
In a language like Haskell, with its strong and powerful type system, why should we “contaminate” such a language with the concept of exceptions?
-
GHC 8.6.4 released by Ben Gamari
The GHC team is very happy to announce the availability of GHC 8.6.4, a bugfix release in the GHC 8.6 series. The 8.6.4 release fixes several regressions present in 8.6.3.
-
Hanayama O’Gear Puzzle by Ben Wiener
I tried solving the puzzle for about fifteen minutes before deciding to use a computer. My basic strategy was to treat the problem as a graph search, where the nodes of the graph are the different states the cube and gear can be in.
-
Monoidal and Applicative Functors by Marcin Szamotulski
In this post we will explore the equivalence between applicative and monoidal functors (i.e. functors which preserve cartesian product).
-
Object oriented Haskell by Julie Moronuki
This week’s most exciting announcement is that I am learning a bit of object-oriented programming and how that translates into Haskell.
-
Property-Based Testing in a Screencast Editor: Introduction by Oskar Wickström
This is the first in a series of posts about using property-based testing (PBT) within Komposition, a screencast editor that I’ve been working on during the last year.
-
Recursion Schemes, Part VI: Comonads, Composition, and Generality by Patrick Thomson
Now that we’ve covered folds (
cata
,para
, andhisto
), unfolds (ana
,apo
, andfutu
), and refolds (hylo
,hypo
,elgot
, andchrono
), I hope I have showed that recursion schemes are a useful tool to organize programs, beautify code, and clarify human intent.
Jobs
-
Software engineer at ITProTV in Gainesville
ITProTV is disrupting the eLearning world with engaging online training that people actually want to watch. We are currently accepting applications for full-stack software professionals to join our small but talented multidisciplinary team.
Taylor Fausak, the editor of Haskell Weekly, is the lead engineer at ITProTV.
In brief
- Dhall version 6.0.0
- Haskell eXchange 2019 - Call for Papers
- Isomorphic web apps in Haskell
- Selective applicative functors
Package of the week
This week’s package of the week is fakedata
,
a library for producing fake data such as names, addressess and phone numbers.
Call for participation
- dh-core: Add test coverage
- hledger: Regex aliases do not allow forward-slash ‘/’ character
- nvim-hs: Fix ci
Events
North America
- 2019-03-07 in Raleigh, NC, USA by Raleigh Haskell Meetup: (hack . yack)
- 2019-03-07 in Las Vegas, NV, USA by Las Vegas Functional Programming User Group: Functional Programming Meetup
- 2019-03-08 in Austin, TX, USA by Austin Types, Theorems, and Programming Languages: Going through Software Foundations by Benjamin Pierce et al
- 2019-03-09 in San Diego, CA, USA by San Diego Software Development Deep Dive: Diving deeper into software development discussions
- 2019-03-09 in Norcross, GA, USA by Atlambda Haskathon: Atlambda Haskathon
- 2019-03-09 in Berkeley, CA by Code Self Study: Open Programming Session (Saturday Afternoon)
- 2019-03-09 in Boston, MA, USA by Weekly Functional Programming Meetup: Hang out, chat FP, work on some code
- 2019-03-12 in Vancouver, BC, Canada by Functional Programming Vancouver: Functional Programming Meetup
Europe
- 2019-03-07 in Graz, Austria by Functional Programming Graz: Functional Programming Meetup
- 2019-03-07 in Brno-střed, Czech Republic by Functional Programming Brno: FP Pivo
- 2019-03-09 in Berlin, Germany by Study Haskell: Weekly Haskell-studying session
- 2019-03-11 in Karlsruhe, Germany by Karlsruhe Haskell Meetup: Parallel and Concurrent Programming Study Group – Vorbesprechung
- 2019-03-11 in București, Romania by Bucharest FP: Bucharest FP #45 — Haskell Book Study Group 06
- 2019-03-11 in Delft, Netherlands by Delft Haskell Study Group: Haskell Study Session #3
- 2019-03-11 in London, United Kingdom by Skills Matter - X Matters Keynote Series - Developer Events: JavaScript Matters with Lisa Gagarina!
- 2019-03-12 in Rennes, France by Meetup Lambda Rennes - Programmation fonctionnelle: Cycle.js
- 2019-03-12 in Düsseldorf, Germany by Clojure Düsseldorf: Clojure: Auf den Pfaden des Mars Rovers
Asia
- 2019-03-07 in Mumbai, India by DelhiNCR Haskell And Functional Programming Languages Group: FPNCR Monthly meetup
- 2019-03-08 in Noida, India by Reactive Application Programmers in Delhi NCR: MEETUP | Introduction to Java 11
- 2019-03-10 in Bengaluru, India by Bangalore Functional Programmers Meetup: Lets Lens - Part 1
South America
- 2019-03-07 in Santiago, Chile by Santiago Scala Meetup: Santiago Scala Meetup
Africa
- 2019-03-11 in Sandton, South Africa by Lambda Luminaries: Placeholder: Putting the Fun back in Functional at Lambda Luminaries