Issue 137
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
-
GHC 8.6.3 released by Ben Gamari
The GHC team is very happy to announce the availability of GHC 8.6.3, a bugfix release in the GHC 8.6 series. The 8.6 release fixes several regressions present in 8.6.2 including
-
A webcam server in 35 lines of Haskell
This post shows how to implement a webcam server in Haskell. The implemented server is a classic web server that stores the current image in memory and sends it to any HTTP client that requests it.
-
Why Not Both? by Sam Halliday
Build Haskell projects with either
cabal
orstack
. Truly, both excellent tools can live together and we can get on with the business of writing beautiful Haskell together! -
A Home for Orphan Instances by Evan Borden
It’s the holiday season and as Haskellers we turn our attention to those in need, orphans. There are three things we need to do for orphans this holiday season: isolate them, prevent them from getting their dirty fingerprints everywhere, and hurry up and decrease the surplus compilation.
-
Clock and reference by Chris Martin
The first lesson in our new series entitled Timepieces is out today. Julie builds us a GUI app with a clock using FLTK (and its Haskell wrapper,
fltkhs
). -
DIY benchmark history with Criterion and Shiny by Théophane Hufschmitt
If you’re a conscientious developer like I am, you probably have a benchmark suite for the programs and libraries you develop. However, the temporal aspect of these benchmark suites is not always easy to analyze.
-
Down with Show! Part 1: Rules of thumb for when to use a type class by Harry Garrood
This is part one of three in a series of posts in which I will argue that it’s time to consign the
Show
type class to the dustbin of history. -
Getting Started with the Haskell AWS Lambda Runtime by Nikita Tchayka
Today we’re proudly announcing the release of a fully working Haskell Runtime for AWS Lambda and our commitment to maintain it.
-
Guidelines for respectful communication by Simon Peyton Jones
As many of you will know, I have been concerned for several years about the standards of discourse in the Haskell community. We discussed this at a meeting of the GHC Steering Committee at ICFP in September, and many of us have had related discussions since.
-
Shifting the Stars: Advent of Code with Galilean Optimization
Today, we’re going to be using linear algebra, calculus, and galilian transformations to solve the Day 10 challenge.
Jobs
-
Galois is Hiring! (ad)
Galois is looking for Software Engineers/Researchers and Project Managers! We collaborate with organizations like NASA, DARPA, and Amazon Web Services to explore blue sky ideas and turn them into usable technology. Some of the things we’ve worked on in the past: Formal methods, static analysis, binary analysis, cryptographic algorithms, domain specific languages, programming languages theory, abstract interpretation, type theory, formal verification and software correctness, reinforcement learning, autonomous systems assurance, communication security, cyber-deception for network defense, DDoS defense, provable hardware security, statistical anomaly detection for detecting advanced persistent threats. We think working here is awesome (see https://lifeatgalois.com).
In brief
- Basic Catamorphisms - Recursion Schemes By Example
- Finding correct (lens) laws
- Higher-rank and higher-kinded types
- Introduction to Tagless Final
- My first proper Idris program
- Naming abstraction
- New user empathy
- Observable as an open interface for handling executing processes and property testing
- Purescript III: Making a Web Page with Purescript and React!
- Rest-ish Services in Haskell Part 3
- Some results about algebraic graphs homomorphisms
- United Monoids
- Zooming In on Field Accessors
Package of the week
This week’s package of the week is Clay, a CSS preprocessor like Sass implemented as an embedded domain specific language.
Call for participation
Events
North America
- 2018-12-12 in Portland, OR, USA by Portland Functional Programming Study Group: PDX Func Theory Track - Logic and Proof
- 2018-12-12 in Montréal, QC, Canada by Lambda Montreal: Richard Kallos presents: An introduction to the Pony programming language
- 2018-12-13 in Raleigh, NC, USA by Raleigh Haskell Meetup: (hack . yack)
- 2018-12-13 in Las Vegas, NV, USA by Las Vegas Functional Programming User Group: Functional Programming Meetup
- 2018-12-13 in Suite 1305, IL, USA by Chicago Haskell: ❄️🔔 Project Euler / Haskell / Kotlin Holiday Extravaganza 🔔❄️
- 2018-12-14 in Austin, TX, USA by Austin Types, Theorems, and Programming Languages: Going through Software Foundations by Benjamin Pierce et al
- 2018-12-15 in Chilliwack, BC, Canada by ChilliHask Haskell User Group: Weekly Haskell Coding Meetup
- 2018-12-15 in Boston, MA, USA by Weekly Functional Programming Meetup: Hang out, chat FP, work on some code
- 2018-12-15 in Bellevue, WA, USA by Seattle Area Haskell Users’ Group: General discussion
- 2018-12-17 in Portland, OR, USA by Portland Functional Programming Study Group: PDX Func Practice Track - Parallel and Concurrent Programming in Haskell
- 2018-12-18 in Minneapolis, USA by HaskellMN: HaskellMN Monthly Meetup
- 2018-12-19 in Houston, TX, USA by Houston Functional Programmers: Festive Holiday Geekery
- 2018-12-19 in Austin, TX, USA by Austin Haskell Users Group: Haskell Beginner-Friendly Lab
Europe
- 2018-12-13 in Zürich, Switzerland by HaskellerZ: Scala eXchange London
- 2018-12-13 in Brno, Czech Republic by Functional Programming Brno: Scala eXchange London 2018 (2 free tickets)
- 2018-12-13 in London, N1 0QH, United Kingdom by London Functional Programmers: Scala eXchange @Skills Matter
- 2018-12-13 in London, United Kingdom by Hoodlums: Hoodlums Meetup
- 2018-12-13 in La Madeleine, France by NightClazz by Zenika Lille: BBL Programmation Fonctionnelle avec Haskell
- 2018-12-17 in Karlsruhe, Germany by Karlsruhe Haskell Meetup: Haskell Monday
- 2018-12-18 in Montpellier, France by Functional Programming Montpellier: Meetup FP de Noël !!
- 2018-12-18 in Gent, Belgium by Ghent Functional Programming Group Meetup: Dependent Types in Haskell: Binomial Heaps
- 2018-12-19 in cluj-napoca, Romania by Cluj.fp: Zippers, when you really want to point at something
- 2018-12-19 in Vilnius, Lithuania by Functional Vilnius: Functional Vilnius #12: Implicits & Sequent Calculus
Asia
- 2018-12-13 in Bangkok, Thailand by Bangkok Functional Programmers: Christmas Code War “World Cup of Code”/“ศึกเขียนโค๊ดแห่งปี”
- 2018-12-13 in Hong Kong, Hong Kong by Hong Kong Functional Programming: A Road to Dependently Typed Haskell Core: Coercion Quantification
- 2018-12-14 in Noida, India by Reactive Application Programmers in Delhi NCR: Being Stateful Over Kubernetes
- 2018-12-17 in Tokyo, Japan by Tokyo Haskell Meetup: Talk by William Byrd (author MiniKanren, Reasoned Schemer)
- 2018-12-17 in Perth, Australia by Perth Functional Programmers: Haskell study group
South America
- 2018-12-13 in São Paulo, Brazil by Lambda I/O Sampa: Introdução ao Haskell - Lambda I/O no Garoa