« Back to the newsletter

Date Newsletter
Jul 29, 2021 πŸ’» Issue 230 - IDE: Summer of HLS
Jul 22, 2021 πŸ’» Issue 229 - This is so hard to post: why my last three blog posts are wrong and how I screwed up trying to benchmark Haskell code.
Jul 15, 2021 πŸ’» Issue 228 - Cast Haskell values with Witch
Jul 08, 2021 πŸ’» Issue 227 - GitHub Copilot with Haskell
Jul 01, 2021 πŸ’» Issue 226 - Typed Programs Don't Leak Data
Jun 24, 2021 πŸ’» Issue 225 - Sandy Maguire: A New Kind of Programming: Tactic Metaprogramming in Haskell
Jun 17, 2021 πŸ’» Issue 224 - Why I Support the Haskell Foundation
Jun 10, 2021 πŸ’» Issue 223 - Haskell is diverse.
Jun 03, 2021 πŸ’» Issue 222 - What's all the hype with Nix?
May 27, 2021 πŸ’» Issue 221 - State of the Cabal - Q1+Q2/2021
May 20, 2021 πŸ’» Issue 220 - Simple Haskell Book – Learn how to build Haskell applications.
May 13, 2021 πŸ’» Issue 219 - Senior Developer position at Typeable
May 06, 2021 πŸ’» Issue 218 - Free online intro/advanced Haskell courses [YouTube]
Apr 29, 2021 πŸ’» Issue 217 - Ormolu internship
Apr 22, 2021 πŸ’» Issue 216 - Type Families in Haskell: The Definitive Guide
Apr 15, 2021 πŸ’» Issue 215 - Journal of Functional Programming is flipping to Open Access in 2022
Apr 08, 2021 πŸ’» Issue 214 - Introducing alpaca-netcode: Rollback/replay NetCode for realtime, deterministic, multiplayer games.
Apr 01, 2021 πŸ’» Issue 213 - Incubating the Haskell Foundation
Mar 25, 2021 πŸ’» Issue 212 - An introduction to typeclass metaprogramming
Mar 18, 2021 πŸ’» Issue 211 - Haskell base proposal: unifying vector-like types
Mar 11, 2021 πŸ’» Issue 210 - Record dot syntax has been merged
Mar 04, 2021 πŸ’» Issue 209 - Infinite and cyclic lists explained with ghc-vis
Feb 25, 2021 πŸ’» Issue 208 - Implementation of NoFieldSelectors is merged
Feb 18, 2021 πŸ’» Issue 207 - Reflections On Using Haskell For My Startup
Feb 11, 2021 πŸ’» Issue 206 - Haskell Foundation Executive Director and Chief Technology Officer
Feb 04, 2021 πŸ’» Issue 205 - Announcing the Haskell Foundation Board - Haskell Foundation
Jan 28, 2021 πŸ’» Issue 204 - Active Haskell projects
Jan 21, 2021 πŸ’» Issue 203 - Maybe Considered Harmful
Jan 14, 2021 πŸ’» Issue 202 - Why Haskell is our first choice for building production software systems
Jan 07, 2021 πŸ’» Issue 201 - Artyom's Haskell toolbox β€” a long list of tools/libraries I use
Dec 31, 2020 πŸ’» Issue 200 - Haskell doesn't have macros
Dec 24, 2020 πŸ’» Issue 199 - lower case haskell
Dec 17, 2020 πŸ’» Issue 198 - Kowainik - Foo to Bar: Naming Conventions in Haskell
Dec 10, 2020 πŸ’» Issue 197 - Haskell: The Bad Parts, part 3
Dec 03, 2020 πŸ’» Issue 196 - Error handling is hard
Nov 26, 2020 πŸ’» Issue 195 - 2020 State of Haskell Survey results
Nov 19, 2020 πŸ’» Issue 194 - Shuffling Things Up: Solving Advent of Code with the help of Group Theory, and how Haskell helps nudge us to the solution
Nov 12, 2020 πŸ’» Issue 193 - Haskell: The Bad Parts, part 2
Nov 05, 2020 πŸ’» Issue 192 - Names are not type safety
Oct 29, 2020 πŸ’» Issue 191 - Haskell: The Bad Parts, part 1
Oct 22, 2020 πŸ’» Issue 190 - Flashblast - A tool for creating language learning flashcards from video and subtitles.
Oct 15, 2020 πŸ’» Issue 189 - Towards Tactic Metaprogramming in Haskell :: Reasonably Polymorphic
Oct 08, 2020 πŸ’» Issue 188 - Making GHCIDE smarter and faster: a fellowship summary
Oct 01, 2020 πŸ’» Issue 187 - Blogpost/announcement: new library for avoiding/debugging memory leaks
Sep 24, 2020 πŸ’» Issue 186 - [Blog Post] Strategic Deriving: Ultimate Deriving Guide
Sep 17, 2020 πŸ’» Issue 185 - Bazel, Haskell, and Build-System Joy
Sep 10, 2020 πŸ’» Issue 184 - Partnering with Well Typed and investing in the Haskell community
Sep 03, 2020 πŸ’» Issue 183 - Handing over ghcide to the Haskell community
Aug 27, 2020 πŸ’» Issue 182 - LiquidHaskell is a GHC Plugin
Aug 20, 2020 πŸ’» Issue 181 - [Blog Post] Haskell mini-patterns handbook
Aug 13, 2020 πŸ’» Issue 180 - Videos from Haskell Love conference Day 1 are out!
Aug 06, 2020 πŸ’» Issue 179 - The Haskell Elephant in the Room - Response from IOHK CEO.
Jul 30, 2020 πŸ’» Issue 178 - Haskell Language Server, static binaries and automatic installation
Jul 23, 2020 πŸ’» Issue 177 - How Accursed and Unutterable is accursedUnutterablePerformIO?
Jul 16, 2020 πŸ’» Issue 176 - Qualified Do: Rebind Your Do-Notation the Right Way
Jul 09, 2020 πŸ’» Issue 175 - Retrie: Haskell refactoring made easy - Facebook Engineering
Jul 02, 2020 πŸ’» Issue 174 - Try these 4 languages from 4 corners of Programming
Jun 25, 2020 πŸ’» Issue 173 - Linear types are merged in GHC
Jun 18, 2020 πŸ’» Issue 172 - [ZΓΌrich Friends of Haskell] Effects for Less - Alexis King
Jun 11, 2020 πŸ’» Issue 171 - The Pain Points of Haskell: A Practical Summary
Jun 04, 2020 πŸ’» Issue 170 - On Marketing Haskell
May 28, 2020 πŸ’» Issue 169 - Simple Haskell is Best Haskell
May 21, 2020 πŸ’» Issue 168 - Haskell Error Message, and How to Improve Them
May 14, 2020 πŸ’» Issue 167 - The State of Haskell IDEs
May 07, 2020 πŸ’» Issue 166 - HLint 3.0
Apr 30, 2020 πŸ’» Issue 165 - 10 Reasons to Use Haskell
Apr 23, 2020 πŸ’» Issue 164 - Permissive, then restrictive: learning how to design Haskell programs
Apr 16, 2020 πŸ’» Issue 163 - Why I'm leaving Elm
Apr 09, 2020 πŸ’» Issue 162 - Blog: Wide Haskell - Reducing your Dependencies
Apr 02, 2020 πŸ’» Issue 161 - The SQL library esqueleto now supports UNION, safer joins, and subquery joins!
Mar 26, 2020 πŸ’» Issue 160 - SkillsMatter is back online, including all videos from past conferences! Here's HaskellExchange 2019, in case you missed it!
Mar 19, 2020 πŸ’» Issue 159 - PSA: Programming in Haskell by Graham Hutton is available for free in HTML format until the end of May on Cambridge University Press's Website (along with their other textbooks)
Mar 12, 2020 πŸ’» Issue 158 - Visual Arrow Syntax
Mar 05, 2020 πŸ’» Issue 157 - Miranda, a forerunner to Haskell, has been released as free software
Feb 27, 2020 πŸ’» Issue 156 - The GHC User Guide is a great resource.
Feb 20, 2020 πŸ’» Issue 155 - What I Wish I Knew When Learning Haskell *2.5* ( Stephen Diehl )
Feb 13, 2020 πŸ’» Issue 154 - Lessons learned from writing ShellCheck
Feb 06, 2020 πŸ’» Issue 153 - Functional or Combinator Parsing explained by Professor Graham Hutton
Jan 30, 2020 πŸ’» Issue 152 - One Haskell IDE to rule them all
Jan 24, 2020 πŸ’» Issue 151 - No, dynamic type systems are not inherently more open
Jan 17, 2020 πŸ’» Issue 150 - Static types are dangerous
Jan 10, 2020 πŸ’» Issue 149 - Programming with Categories - Lecture 0
Jan 03, 2020 πŸ’» Issue 148 - A plea to Haskellers everywhere: Write Junior Code
Dec 27, 2019 πŸ’» Issue 147 - [ANN] FIR: a Haskell shader EDSL targeting SPIR-V (Vulkan/OpenCL)
Dec 20, 2019 πŸ’» Issue 146 - Which type-safe database library should you use?
Dec 13, 2019 πŸ’» Issue 145 - πŸ”Optics By Example: A comprehensive guide to lenses and optics [LAUNCHED] πŸŽ‰
Dec 06, 2019 πŸ’» Issue 144 - Haskell Support in Mainstream IDEs
Nov 29, 2019 πŸ’» Issue 143 - Boring Haskell Manifesto by Michael Snoyman
Nov 22, 2019 πŸ’» Issue 142 - 2019 State of Haskell Survey results
Nov 15, 2019 πŸ’» Issue 141 - Megaparsec 8
Nov 08, 2019 πŸ’» Issue 140 - Parse, don’t validate
Nov 01, 2019 πŸ’» Issue 139 - Blog: Low-latency garbage collector merged for GHC 8.10
Oct 25, 2019 πŸ’» Issue 138 - Empathy and subjective experience in programming languages
Oct 18, 2019 πŸ’» Issue 137 - Beating Decades of Optimized C with 80 Lines of Haskell
Oct 11, 2019 πŸ’» Issue 136 - You are already smart enough to write Haskell
Oct 04, 2019 πŸ’» Issue 135 - Inspecting Haskell Instance Resolution
Sep 27, 2019 πŸ’» Issue 134 - Which typeclass are you? [impurepics quiz]
Sep 20, 2019 πŸ’» Issue 133 - The lenses book: Optics By Example - Early Access
Sep 13, 2019 πŸ’» Issue 132 - Neil Mitchell – Making a Haskell IDE – Munihac 2019
Sep 06, 2019 πŸ’» Issue 131 - Well-Typed - Announcing the optics library
Aug 30, 2019 πŸ’» Issue 130 - Simon Peyton Jones: GHC status report
Aug 23, 2019 πŸ’» Issue 129 - All the Monadic Party 2019 talks are on YouTube
Aug 16, 2019 πŸ’» Issue 128 - Who Authorized these Ghosts!?
Aug 09, 2019 πŸ’» Issue 127 - [ANN] monad-validate β€” A monad transformer for writing data validations
Aug 02, 2019 πŸ’» Issue 126 - Generating castles for Minecraft using Haskell
Jul 26, 2019 πŸ’» Issue 125 - Simon Marlow - Glean - facts about code
Jul 19, 2019 πŸ’» Issue 124 - Experience report: Haskell at Holmusk
Jul 12, 2019 πŸ’» Issue 123 - Pragmatic intro to lambda calculus and various type systems - Found this very useful as it had readily running interpreter
Jul 05, 2019 πŸ’» Issue 122 - HIE Files - coming soon to a GHC near you!
Jun 28, 2019 πŸ’» Issue 121 - Hacking on GHC Has Never Been Easier!
Jun 21, 2019 πŸ’» Issue 120 - Bringing TLS 1.3 to Haskell
Jun 14, 2019 πŸ’» Issue 119 - A Practical Introduction to Freer Monads
Jun 07, 2019 πŸ’» Issue 118 - The Helium Haskell compiler and its new LLVM backend [video]
May 31, 2019 πŸ’» Issue 117 - Tweag I/O - Ormolu: Format Haskell code like never before
May 24, 2019 πŸ’» Issue 116 - Announcing the Haskell Weekly podcast
May 17, 2019 πŸ’» Issue 115 - New hope for adopting FP even faster
May 10, 2019 πŸ’» Issue 114 - Microsoft and Galois propose using FP to safeguard US elections
May 03, 2019 πŸ’» Issue 113 - foldr under the hood
Apr 26, 2019 πŸ’» Issue 112 - The Monads of Haskell
Apr 19, 2019 πŸ’» Issue 111 - Evaluating RIO
Apr 12, 2019 πŸ’» Issue 110 - Rob Pike Reinvented Monads
Apr 05, 2019 πŸ’» Issue 109 - Implementing cat in Haskell
Mar 29, 2019 πŸ’» Issue 108 - ghcup homepage now at haskell.org
Mar 22, 2019 πŸ’» Issue 107 - Simon Peyton Jones to lead National Centre for Computing Education
Mar 15, 2019 πŸ’» Issue 106 - How we made Haskell search strings as fast as Rust
Mar 08, 2019 πŸ’» Issue 105 - ISOMORPHIC WEB APPS IN HASKELL
Mar 01, 2019 πŸ’» Issue 104 - Haskell.Org accepted for GSoC 2019
Feb 22, 2019 πŸ’» Issue 103 - Freer Monads: Too Fast, Too Free :: Reasonably Polymorphic
Feb 15, 2019 πŸ’» Issue 102 - Freer Monads, More Better Programs :: Reasonably Polymorphic
Feb 08, 2019 πŸ’» Issue 101 - Announcing ghc-lib
Feb 01, 2019 πŸ’» Issue 100 - [ANN] Floskell, a New Haskell Source Code Formatter
Jan 25, 2019 πŸ’» Issue 99 - "Discrete Mathematics Using a Computer" a book that teaches discrete math using Haskell.
Jan 18, 2019 πŸ’» Issue 98 - Teaching to read Haskell
Jan 11, 2019 πŸ’» Issue 97 - Purely Functional GTK+, Part 1: Hello World
Jan 04, 2019 πŸ’» Issue 96 - β€œWhen Is Haskell More Useful Than R Or Python In Data Science?”
Dec 28, 2018 πŸ’» Issue 95 - Graphs are to categories as lists are to monoids
Dec 21, 2018 πŸ’» Issue 94 - Why Dependent Haskell is the Future of Software Development
Dec 14, 2018 πŸ’» Issue 93 - new user empathy
Dec 07, 2018 πŸ’» Issue 92 - Congratulations to John Hughes, named today as an ACM Fellow for his contributions software testing and functional programming
Nov 30, 2018 πŸ’» Issue 91 - My Professor, Dr. H. Conrad Cunningham, has written an online book to teach us about FP and Haskell. Just wanted to share this valuable resource with the community.
Nov 23, 2018 πŸ’» Issue 90 - MuniHac 2018: Keynote: A low-latency garbage collector for GHC
Nov 16, 2018 πŸ’» Issue 89 - [ANN]: The book "Thinking with Types: Type-Level Programming in Haskell" is finished!
Nov 09, 2018 πŸ’» Issue 88 - Proposal: Stack Code of Conduct
Nov 02, 2018 πŸ’» Issue 87 - I've written a free beginner's guide to Haskell, called Wise Man's Haskell. Hope you enjoy!
Oct 26, 2018 πŸ’» Issue 86 - Announcing Profiterole - GHC Profile Viewer
Oct 19, 2018 πŸ’» Issue 85 - "Hackett: a metaprogrammable Haskell" by Alexis King
Oct 12, 2018 πŸ’» Issue 84 - 2018 Haskell Survey Results
Oct 05, 2018 πŸ’» Issue 83 - [VIDEO] Build Systems Γ  la Carte by Simon Peyton Jones at ICFP 2018
Sep 28, 2018 πŸ’» Issue 82 - "The Little Typer", by Daniel P. Friedman and David Thrane Christiansen: "An introduction to dependent types, demonstrating the most beautiful aspects, one step at a time."
Sep 21, 2018 πŸ’» Issue 81 - Do notation is 20 years old today
Sep 14, 2018 πŸ’» Issue 80 - Exploring Nix & Haskell Part 1: Project Setup
Sep 07, 2018 πŸ’» Issue 79 - The Universe of Discourse : Why I never finish my Haskell programs (part 1 of ∞ˆž)
Aug 31, 2018 πŸ’» Issue 78 - Megaparsec 7
Aug 24, 2018 πŸ’» Issue 77 - The Joy of Haskell: A long overdue announcement
Aug 17, 2018 πŸ’» Issue 76 - Functions may behave as if they had negative complexity on optimal evaluators
Aug 10, 2018 πŸ’» Issue 75 - A Guide to GHC's Extensions
Aug 03, 2018 πŸ’» Issue 74 - Making Haskell as fast as C: Imperative programming in Haskell
Jul 27, 2018 πŸ’» Issue 73 - Wire is hiring: a Haskell developer and an operations engineer [Berlin]
Jul 20, 2018 πŸ’» Issue 72 - Explaining why our team picked Haskell (and Elm)
Jul 13, 2018 πŸ’» Issue 71 - Fast Sudoku Solver in Haskell #2: A 200x Faster Solution
Jul 06, 2018 πŸ’» Issue 70 - stop supporting older GHCs
Jun 22, 2018 πŸ’» Issue 69 - Fixing 17 space leaks in GHCi, and keeping them fixed Β· Simon Marlow
Jun 15, 2018 πŸ’» Issue 68 - HaskellRank Ep.05
Jun 08, 2018 πŸ’» Issue 67 - Haskell Adoption and User Satisfaction Growing
Jun 01, 2018 πŸ’» Issue 66 - Tweag I/O - Fibonacci compiles end-to-end from Haskell to WebAssembly
May 25, 2018 πŸ’» Issue 65 - Ertugrul SΓΆylemez: 1985-2018
May 18, 2018 πŸ’» Issue 64 - [job] Work on GHC at Facebook London
May 11, 2018 πŸ’» Issue 63 - Dynamic Programming in Haskell is Just Recursion
May 04, 2018 πŸ’» Issue 62 - What is New in Cross Compiling Haskell
Apr 27, 2018 πŸ’» Issue 61 - 17 projects have been accepted for GSoC
Apr 20, 2018 πŸ’» Issue 60 - Reimplementing Hackett’s type language: expanding to custom core forms in Racket
Apr 13, 2018 πŸ’» Issue 59 - The monad complaint pipeline
Apr 06, 2018 πŸ’» Issue 58 - Building a Haskell roguelike game
Mar 30, 2018 πŸ’» Issue 57 - Applied Category Theory – Online Course
Mar 23, 2018 πŸ’» Issue 56 - Three Layer Haskell Cake
Mar 16, 2018 πŸ’» Issue 55 - Generating artwork with Haskell
Mar 09, 2018 πŸ’» Issue 54 - Trying out GHC compact regions for improved latency (Pusher case study).
Mar 02, 2018 πŸ’» Issue 53 - A Game in Haskell - Dino Rush
Feb 23, 2018 πŸ’» Issue 52 - Haskell Ecosystem Requests
Feb 16, 2018 πŸ’» Issue 51 - Haskell.org Accepted to GSoC for 2018
Feb 09, 2018 πŸ’» Issue 50 - Haskell without the theory β€” beginner-friendly, real-world Haskell tutorials
Feb 02, 2018 πŸ’» Issue 49 - Design Patterns in Haskell Part 1: The Strategy Pattern
Jan 26, 2018 πŸ’» Issue 48 - Michael Snoyman's comments on SLURP
Jan 19, 2018 πŸ’» Issue 47 - My first screencast: Dynamic Test Suites in Haskell using Hspec and Tasty
Jan 12, 2018 πŸ’» Issue 46 - The Comonad.Reader Β» The State Comonad
Jan 05, 2018 πŸ’» Issue 45 - Weakly Typed Haskell
Dec 29, 2017 πŸ’» Issue 44 - Some Notes About How I Write Haskell
Dec 22, 2017 πŸ’» Issue 43 - What Makes Haskell Unique
Dec 15, 2017 πŸ’» Issue 42 - All About Strictness Analysis (part 1)
Dec 08, 2017 πŸ’» Issue 41 - Reflecting on Haskell in 2017 - blog pot by Stephen Diehl
Dec 01, 2017 πŸ’» Issue 40 - What is a Monad? - Computerphile
Nov 24, 2017 πŸ’» Issue 39 - Haskell equality table – because sometimes we forget appreciating the problems we don’t have
Nov 17, 2017 πŸ’» Issue 38 - 2017 state of Haskell survey results
Nov 10, 2017 πŸ’» Issue 37 - Category Theory in Life - Eugenia Cheng [video]
Nov 03, 2017 πŸ’» Issue 36 - Clojure vs. The Static Typing World (haskell in particular)
Oct 27, 2017 πŸ’» Issue 35 - Counterexamples of Type Classes
Oct 20, 2017 πŸ’» Issue 34 - Hotswapping Haskell (at Facebook) Β· Jon Coens
Oct 13, 2017 πŸ’» Issue 33 - Why do our programs need to read input and write output?
Oct 06, 2017 πŸ’» Issue 32 - Building a CPU with Haskell - Part 1
Sep 29, 2017 πŸ’» Issue 31 - Free monad considered harmful
Sep 22, 2017 πŸ’» Issue 30 - New tool: Visualizing lazy evaluation
Sep 15, 2017 πŸ’» Issue 29 - All About Strictness
Sep 08, 2017 πŸ’» Issue 28 - Let's Make a GTK Video Player with Haskell
Sep 01, 2017 πŸ’» Issue 27 - "Category Theory for Programmers" has been finished!
Aug 25, 2017 πŸ’» Issue 26 - Interesting management-level insights into FP and Haskell (FP Complete)
Aug 18, 2017 πŸ’» Issue 25 - John Carmack on (re-)programming Wolfenstein 3D in Haskell
Aug 11, 2017 πŸ’» Issue 24 - Programming as if the Correct Data Structure Mattered
Aug 04, 2017 πŸ’» Issue 23 - Tweag I/O - I am a functional programming evangelist
Jul 28, 2017 πŸ’» Issue 22 - The RIO Monad
Jul 21, 2017 πŸ’» Issue 21 - WireGuard VPN just got formally verified with Tamarin-Prover (which is all Haskell)
Jul 14, 2017 πŸ’» Issue 20 - Iterators and Streams in Rust and Haskell
Jul 07, 2017 πŸ’» Issue 19 - A major upgrade to Megaparsec: more speed, more power
Jun 30, 2017 πŸ’» Issue 18 - Simon Marlow: Haxl – Making Concurrency Unreasonably Easy
Jun 23, 2017 πŸ’» Issue 17 - On Competing with C Using Haskell
Jun 16, 2017 πŸ’» Issue 16 - 10 pleasant surprises of Idris, that improve the developer experience of Haskell developers
Jun 09, 2017 πŸ’» Issue 15 - The Typeclassopedia is now up-to-date
Jun 02, 2017 πŸ’» Issue 14 - Realizing Hackett, a metaprogrammable Haskell
May 26, 2017 πŸ’» Issue 13 - Book: Intermediate Haskell
May 19, 2017 πŸ’» Issue 12 - Simon Peyton-Jones: Escape from the ivory tower: the Haskell journey
May 12, 2017 πŸ’» Issue 11 - Dynamic Dispatch in Haskell, or: How Can I Make My Code Extendable?
May 05, 2017 πŸ’» Issue 10 - I tried Haskell for 5 years and here’s how it was
Apr 28, 2017 πŸ’» Issue 9 - The Influence of Dependent Types - Stephanie Weirich
Apr 21, 2017 πŸ’» Issue 8 - The Haskell Cast #12 - Neil Mitchell on Development Tools
Apr 14, 2017 πŸ’» Issue 7 - Typing the technical interview
Apr 07, 2017 πŸ’» Issue 6 - Verify your Typeclass Instances in Haskell Today, using singletons!
Mar 31, 2017 πŸ’» Issue 5 - Performance improvement from leveraging comonads
Mar 24, 2017 πŸ’» Issue 4 - Three Months of Go (from a Haskeller's perspective) (2016)
Mar 17, 2017 πŸ’» Issue 3 - Linear types make performance more predictable
Mar 10, 2017 πŸ’» Issue 2 - The Haskell Cast #11 - Austin Seipp on Security
Mar 03, 2017 πŸ’» Issue 1 - How we secretly introduced Haskell and got away with it