Issue 148
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 Secret Weapon for Startups — Functional Programming? by Ramanan Raghavendran
There is no question that Freckle’s choice of Haskell — a direct descendant of LISP — as its coding language intrigued me and got me even more hooked on the business.
-
Adding a GHC language extension by Shayne Fletcher
This note summarizes the essential mechanics of adding a new language extension to GHC. The example code will illustrate adding a
Foo
extension. -
Announcing Aelve Codesearch, an online grep over package repositories by Artyom Kazak
Today we’re releasing the first version of Codesearch 60 — an online search through all Haskell, Rust, and Ruby packages. With support for regular expressions!
-
Creating Blog with Hakyll, Nix and Deploying on Amazon EC2
This blog is created using Hakyll and in this post we will see how to setup the hakyll development environment using nix and deploy the website on to Amazon s3 and also on how to deploy website on Amazon EC2 instance.
-
Dead simple Haskell Travis settings for cabal and stack by Dmitrii Kovanikov
Today I am going to share a simple Travis CI configuration for Haskell projects with you. The
.travis.yml
file presented in this blog post allows you to painlessly test your repository on the continuous integration service under multiple GHC versions and with both build tools —cabal-install
andstack
. -
Haskell.Org Participating in GSoC 2019 by Jasper Van der Jeugt
We’re very excited to announce that Haskell.Org has been accepted into the Google Summer of Code 2019 program. We hope that, like last year, it will lead to a whole range of improvements to the Haskell ecosystem, and to new faces joining our community!
-
Local Capabilities with MTL by Sam Halliday
In this post, we will demonstrate a way to encode capabilities that remain local to a single component. Our example builds on the Servant Tutorial and will also show how Servant client endpoints can be mocked out for unit testing.
-
QuickCheck, Hedgehog, Validity by Tom Sydney Kerckhove
This post seeks to provide an overview of the different approaches and to outline a comparison between the most commonly used libraries for property-based testing in Haskell.
-
Welcome to the Haskell Discourse!
Any discussion about Haskell is welcome on this forum. In particular the following topics are encouraged: Announcements about new libraries and applications; Links to blog posts; Requests for help.
-
What the heck is polymorphism? by Jan van Brügge
Polymorphism is the idea of defining data structures or algorithms in general, so you can use them for more than one data type. The complete answer is a bit more nuanced though.
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.
-
Software Developer at VLC in Brisbane
VLC is looking for a Software Developer to join its Future Transport Lab. In this position, you will work with numerous technologies in supporting delivery of a wide range of Research and Development projects across the Transport Modelling and Analytics and Out of Home (OOH) media sectors.
In brief
- A Brief Introduction to the λ-Calculus (Part 2)
- A Case Study in Dhall for Package Configuration
- An EDSL for hard working IT programmers
- Another IDEa: Haskell and IntelliJ!
- Dhall Survey Results
- Gudni: A Haskell-centric Fast Accurate Rasterizer
- Idle Speculation on Lenses and Zippers
- Is Haskell really the language of geniuses and academia?
- Megaparsec tutorial from IH book
- Practical Web Development with Haskell
- PureScript compiler release v0.12.3
- Return of the Clocks
- The campaign for my book “Functional Design and Architecture”
- What’s the right way to QuickCheck floating-point routines?
Package of the week
This week’s package of the week is Waargonaut, a library for flexible, precise, and efficient JSON decoding/encoding.
Call for participation
- exercism/haskell: Bank Account: Hard to guess approach to exercise
- purebred: Replace
selectedItemHelper
with over and L.listModify
Events
North America
- 2019-02-28 in Raleigh, NC, USA by Raleigh Haskell Meetup: (hack . yack)
- 2019-02-28 in Portland, OR, USA by Portland Functional Programming Study Group: PDX Func Theory Track - Logic and Proof
- 2019-02-28 in Chicago, IL, USA by The Project Euler Sprint: Project Euler Sprint
- 2019-02-28 in Calgary, AL, Canada by Functional Programmers YYC: Unconf (YYC.FP)
- 2019-03-02 in Boston, MA, USA by Weekly Functional Programming Meetup: Hang out + short talk (A Whirlwind Tour of Type Theory by Ian Denhardt)
- 2019-03-04 in Irvine, CA by Orange Combinator - Functional Programming In OC: Combinating - The Weekly Function
- 2019-03-04 in Portland, OR, USA by Portland Functional Programming Study Group: PDX Func Practice Track - Parallel and Concurrent Programming in Haskell
- 2019-03-05 in Santa Monica, CA, USA by Santa Monica Haskell Users Group: Haskell Hack Night
- 2019-03-05 in Madison, WI, USA by Haskallywags: TypeScript
- 2019-03-06 in Austin, TX, USA by Austin Haskell Users Group: Haskell Beginner-Friendly Lab
- 2019-03-06 in Washington, DC, USA by The Joy of Programming Meetup: Next Round (TBD)
- 2019-03-06 in Bellevue, WA, USA by SeaLang: Exploring the type system of ReasonML/OCaml
- 2019-03-06 in New York, NY, USA by New York Haskell Users Group: Implementing In-memory Caches in Haskell with Jasper Van Der Jeugt
- 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-27 in Toronto, ON, Canada by Toronto Haskell Meetup: Haskell Meetup: Lightning Talks and Hack Night 2
Europe
- 2019-02-28 in Zürich, Switzerland by HaskellerZ: Zurich Friends of Haskell - General Assembly
- 2019-02-28 in Zürich, Switzerland by HaskellerZ: Artem Chirkin - Experimenting with Constraints
- 2019-02-28 in Son, Netherlands by F#P Eindhoven: Introduction to Fable and an applied use-case using F# and FP techniques
- 2019-02-28 in Göteborg, Sweden by Got.λ - Göteborg Functional Programming Group: All about monads, and Phocate: A monadic parser in and for PHP
- 2019-02-28 in London, United Kingdom by London Functional Programmers: LDN Functionals Meetup #16 - Hosted by Revolut, E14 4HD
- 2019-03-02 in Berlin, Germany by Study Haskell: Weekly Haskell-studying session
- 2019-03-02 in Amsterdam, Netherlands by FP AMS: Talks & Drinks with John de Goes
- 2019-03-04 in București, Romania by Bucharest FP: Bucharest FP #44 — Haskell Book Study Group 05
- 2019-03-04 in Delft, Netherlands by Delft Haskell Study Group: Haskell Study Session #2
- 2019-03-06 in Berlin, Germany by Berlin Haskell Users Group: Haskell Wednesday
- 2019-03-06 in Amsterdam, Netherlands by FP AMS: Category theory study group: Yoneda Embedding
- 2019-03-06 in Berlin, Germany by Friendly Functional Programming Meetup Berlin: Friendly Functional Programming
- 2019-03-06 in Brighton, United Kingdom by Functional Brighton: Double bill: tagless final, monad transformers
Asia
- 2019-02-28 in Tōkyō-to, Japan by Tokyo Scala Developers: Types, Scala & Haskell!
- 2019-03-04 in Hong Kong Island, Hong Kong by Hong Kong Functional Programming: Come and meet the IOHK Rust team!
- 2019-03-06 in Singapore, Singapore by HASKELL.SG: March Singapore Haskell Meetup
- 2019-03-06 in Singapore, Singapore by University of Glasgow: Functional Programming Day 2019
Oceania
- 2019-02-28 in Melbourne, Australia by Melbourne Haskell Users Group: Melbourne Haskell Users Group Meetup