Issue 161
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
-
Codata in action, or how to connect Functional Programming and Object Oriented Programming by Javier Casas
I have been very interested in codata, mainly because it relates to data in a category-theory way, but, as usual, I didn’t understand many of the words involved.
-
Corydalis v0.4 released! by Iustin Pop
Corydalis is a web-based image/video viewer to be used for local (non-cloud) image collections. Think of it as Geeqie but web-based and understanding your entire image collection.
-
Cursors, Part 5: The Tree Cursor by Tom Sydney Kerckhove
This is the fifth post in a series about cursors. It prepares the first data structure to write a simple forest editor
-
Dimensions and Haskell: Introduction by Danya Rogozin
We investigate features of functional programming in the context of machine learning. Python and R are the most widely used languages in this area. In this post, we discuss Haskell advantages in comparison to Python and R.
-
Faking Fundeps with Typechecker Plugins by Sandy Maguire
Today I want to talk about another sort of GHC plugin: type-checker plugins! TC plugins let you hook into GHC’s constraint machinery and help it solve domain-specific problems that it wouldn’t be able to otherwise.
-
Integrating Lua tests with
tasty-lua
by Albert KrewinkelI wrote a little utility, tasty-lua, to integrate Lua tests into tasty Haskell tests. It’s not much, but I liked how it turned out.
-
Introducing Bipartite Graphs in Alga by Vasily Alferov
I am a student at Summer of Haskell this year and I am very thankful to authors of this site who provided me this platform to have a blog about GSoC. This is an introduction post about my project.
-
On the arity of type families by Ryan Scott
Alas, not everything can be partially applied. In particular, GHC offers a type families extension that lets you define functions for use at the type level.
-
Ormolu: Format Haskell code like never before by Mark Karpov
If we think of the average Haskeller, who do we see? A poor, broken person. Tired head falls into the open palms, sobbing, deprived of the basic human right for automated source code formatting.
-
The Next 700 Module Systems by Musa Al-hassy
A requirements driven approach to coherent modularisarion constructs in Dependently-typed languages.
Jobs
-
Galois is hiring for a variety of roles (ad)
Including but not limited to: Software Engineers/Researchers, Project Managers, Hardware Engineers, Red Team Lead, Software Integration Engineer.
We collaborate with organizations like NASA, DARPA, and AWS 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, cryptographic algorithms, abstract interpretation, type theory, formal verification, reinforcement learning, autonomous systems assurance, communication security, cyber-deception for network defense, DDoS defense, provable hardware security, and statistical anomaly detection for detecting advanced persistent threats. We think working here is awesome; see lifeatgalois.com.
Trying to hire a Haskell developer? You should advertise with us!
In brief
- Deriving a Linear-Time Applicative Traversal of a Rose Tree
- Faking SQL Server in Haskell
- Haskell Weekly podcast episode 11: Profiling performance
haskell-src-exts
: no more releaseshove-letter
: An implementation of the game Love Letter in the terminal- How is Haskell faster than C?
- MIT spinout offering up to $1.5M to ventures in Applied Category Theory
- Montevideo: a toolkit for live-coding music in Haskell
- Smarter Enemies with BFS!
- Stack 2.1 release candidate
- Zurihac news
Package of the week
This week’s package of the week is servant-elm
, a library that automatically derives Elms functions to query Servant webservices.
Call for participation
Events
North America
- 2019-05-30 in Raleigh, NC, USA by Raleigh Haskell Meetup: (hack . yack)
- 2019-05-30 in Las Vegas, NV, USA by Las Vegas Functional Programming User Group: Functional Programming Meetup
- 2019-05-30 in Chicago, IL, USA by The Project Euler Sprint: Project Euler Sprint
- 2019-05-31 in Toronto, ON, Canada by Toronto Haskell Meetup: Haskell Meetup: Motivation for Haskell and FP Principles
- 2019-06-01 in San Diego, CA, USA by San Diego Software Development Deep Dive: Diving deeper into software development discussions
- 2019-06-01 in Berkeley, CA by Code Self Study: Open Programming Session (Saturday Afternoon)
- 2019-06-01 in Boston, MA, USA by Weekly Functional Programming Meetup: Hang out + short talk (topic not yet announced)
- 2019-06-01 in New York, NY, USA by New York Haskell Users Group: Haskell CoHack
- 2019-06-02 in San Francisco, CA, USA by Queerious Labs: Haskell for Beginners
- 2019-06-02 in Ankeny, IA, USA by Des Moines Haskell Study Group: (Ankeny) Week 3. Basic datatypes. (Review ch. 2 & 3 plus ch. 4 & 5)
- 2019-06-03 in Irvine, CA by Orange Combinator - Functional Programming In OC: The Weekly Function
- 2019-06-03 in SAINT LOUIS, MO, USA by STL Elm: Elm Code Night
- 2019-06-04 in Brooklyn, NY, USA by New York Haskell Users Group: Parallel and Concurrent Haskell Reading Group
- 2019-06-04 in Madison, WI, USA by Haskallywags: Library Operating Systems: Functional Programming for the Whole System
- 2019-06-05 in Houston, TX, USA by Houston Functional Programmers: Social Hour
- 2019-06-05 in Berkeley, CA by Code Self Study: Open Programming Session (Wednesday, Berkeley)
- 2019-06-05 in Austin, TX, USA by Austin Haskell Users Group: Haskell Beginner-Friendly Lab
- 2019-06-05 in Washington, DC, USA by The Joy of Programming Meetup: Next Round (TBD)
- 2019-06-05 in Bellevue, WA, USA by SeaLang: Intro to Quantum Computing Algorithms
- 2019-06-05 in Montréal, QC, Canada by Lambda Montreal: Francis Toth presents: How can effects be managed in a functional way?
Europe
- 2019-05-30 in Belgrade, Serbia by Elixir |> Belgrade: Phoenix LiveView - Making modern web apps without JavaScript
- 2019-06-03 in Exeter, United Kingdom by Exeter Functional Programmers: Talk functional
- 2019-06-03 in Delft, Netherlands by Delft Haskell Study Group: Haskell Study Session #14
- 2019-06-03 in London EC2, United Kingdom by Skills Matter - xMatters Keynote Series - Developer Events: Keynote by Oren Eini on When Select() is Broken
- 2019-06-04 in Heverlee, Belgium by Belgian Scala User Group: Introduction to Tensorflow in Scala
- 2019-06-05 in Budapest, Hungary by Budapest Haskell User Group: Haskell Book reading group (29th Ed.)
South America
- 2019-05-29 in Quito, Ecuador by Quito Lambda: Más allá de Java 8, el enfoque funcional y Spring WebFlux
- 2019-06-04 in São Paulo, Brazil by HaskellBR - São Paulo: 10º Encontro de Haskellers de São Paulo @Dafiti
Oceania
- 2019-05-30 in Melbourne, Australia by Melbourne Haskell Users Group: Melbourne Haskell Users Group Meetup
- 2019-06-03 in Richmond, Australia by Elm Melbourne: Elm Meetup – conversation and hacking on personal projects
Asia
- 2019-05-30 in Noida, India by Reactive Application Programmers in Delhi NCR: [Webinar]: Working with Reactive Spring