Issue 128 2018-10-11
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.
I decided to stray a little off the beaten track and implement the programming exercises from Andrew’s course in Haskell instead. Haskell feels well-suited for this problem.
I’ve been exploring the idea of an Elm compiler that produces assembly for the Erlang Virtual Machine. This essay documents some interesting parts of the project.
The RAII (Resource Acquisition Is Initialization) approach in both C++ and Rust leads to a nicer solution than even our bracket pattern in Haskell, by (mostly) avoiding the possibility of a premature close.
Haskell code explorer is a web application for exploring and understanding Haskell codebases. It provides the following features: Types and documentation on hover, go to definition, find references, type of each expression & semantic highlighting.
For expressing queries over collections of data, monoid comprehension can be more flexible, simpler, more efficient, and safer than its monadic counterpart.
Time for me to reveal the example I had in mind that led to the generalization in my previous post. Thanks for all the interesting comments: it seems like there are some interesting connections to be explored.
This post walks through the development of a small Haskell program for aligning equals symbols in a block of text. This walkthrough targets a beginning programmer by describing several steps and concepts in extra detail.
The Rosie Pattern Language (RPL) is a DSL for parsing strings which is more convenient and easier to work with than regular expressions. RPL is a Lua library with a C Foreign Function Interface (FFI). I noticed that there wasn’t a way to call it from Haskell.
I’ve talked about adding metrics to the Haskell application. I decided to prepare a full example that can be looked at and reused in later posts and projects.
CitizenNet is hiring PureScript engineers! Come work at the leading social advertising platform in entertainment, now a key part of Condè Nast’s Spire data team managing one of the world’s largest content networks. Contribute to open source, build polished interfaces in PureScript, and work with talented & friendly teammates in Los Angeles.
- 2018 Haskell survey results
Control.Dsl: An alternative to monads
- Deeper Stack knowledge
- Full deck
ghci-hexcalc: GHCi as a hex calculator
- Haskell Communities and Activities Report, November 2018 edition: Call for contributions
- Penrose: Create beautiful mathematical diagrams
- Requesting feedback on OpenADT package
- What is new in cross compiling Haskell: August & September edition
- Wrapping up Haskell Book
Package of the week
This week’s package of the week is Autoexporter, a tool for automatically writing modules that simply re-export other modules.
Call for participation
- Allure: Mark hero and crosshair with cursor in console frontends
- purebred: Replace System.Process with System.Process.Typed
- 2018-10-11 in Durham, NC, USA by Durham Haskell Meetup: Morning Haskell (and Rust!) coding session
- 2018-10-11 in Raleigh, NC, USA by Raleigh Haskell Meetup: (hack . yack)
- 2018-10-12 in Austin, TX, USA by Austin Types, Theorems, and Programming Languages: Going through Software Foundations by Benjamin Pierce et al
- 2018-10-13 in Chilliwack, BC, Canada by ChilliHask Haskell User Group: Weekly Haskell Coding Meetup
- 2018-10-13 in Norcross, GA, USA by Norcross Haskathon: Norcross Haskathon
- 2018-10-13 in Boston, MA, USA by Weekly Functional Programming Meetup: Hang out, chat FP, work on some code
- 2018-10-15 in Irvine, CA by Orange Combinator - Functional Programming In OC: Combinating - The Weekly Function
- 2018-10-15 in Tulsa, OK, USA by Tulsa Lambda Lunch: Let’s Learn PureScript Together! (Chapter 3)
- 2018-10-15 in Lehi, UT, USA by Utah Haskell: Utah Haskell Meetup | Book Club
- 2018-10-15 in Portland, OR, USA by Portland Functional Programming Study Group: PDX Func Practice Track - Parallel and Concurrent Programming in Haskell
- 2018-10-16 in Vancouver, BC, Canada by Vancouver Functional Programmers: Haskell Lunch Study Group • Fall ’18 Cohort (new group)
- 2018-10-16 in Minneapolis, USA by HaskellMN: HaskellMN Monthly Meetup
- 2018-10-16 in Santa Monica, CA, USA by Santa Monica Haskell Users Group: Haskell Study Group: Monoids
- 2018-10-16 in Carmel, USA by Indy FP: Using Types to Make (many) Bugs Impossible
- 2018-10-16 in St. Louis, MO, USA by STL Women Who Code: Full-Stack ML: Building Web Applications With Haskell and Elm
- 2018-10-17 in Austin, TX, USA by Austin Haskell Users Group: Haskell Beginner-Friendly Lab
- 2018-10-17 in Houston, TX, USA by Houston Functional Programmers: Extending F# through Computation Expressions
- 2018-10-18 in Las Vegas, NV, USA by Las Vegas Functional Programming User Group: Functional Programming Meetup
- 2018-10-11 in Stavanger, Norway by Functional escape from the imperative world: Haskell Exchange 2018 London
- 2018-10-11 in Amsterdam, Netherlands by FP AMS: Haskell Exchange conference (1 ticket raffle!)
- 2018-10-16 in Bristol, United Kingdom by CodeHub Bristol: Hack Night + Haskell Study Group
- 2018-10-16 in cluj-napoca, Romania by Cluj.fp: Property based testing introduction workshop
- 2018-10-17 in Berlin, Germany by Berlin Haskell Users Group: Haskell Wednesday
- 2018-10-17 in Amsterdam, Netherlands by FP AMS: CT study group: Free Monoids
- 2018-10-17 in Stuttgart, Germany by Lambda Stuttgart: Lambda Stuttgart Meetup #9 (Introduction to Elm)
- 2018-10-24 in Göteborg, Sweden by Got.λ - Göteborg Functional Programming Group: Functional thinking: two refactoring exercises in Purescript and Haskell