Interleaving line blocks in Vim
February 13, 2020
How to "interleave" two blocks of lines together
-
Nix overlay evaluation example
January 29, 2020
A full example showcasing overlays and fixpoint evaluation in Nix.
-
Change directory and list files in one go
January 18, 2020
Save on keystrokes by combining the effects of `cd` and `ls` in the terminal
-
nix show-derivation is your friend
January 17, 2020
Use nix show-derivation to pretty print Nix derivations
-
It is always good to know what you are doing
January 15, 2020
How I ruined my nix.conf file by blindly following howto instructions
-
Welcome 2020
January 14, 2020
My first post in 2020
-
How Nix provides GHC with packages
July 10, 2019
In this blog post I want to have a look at the actual build step for the ghc executable with packages via Nix
-
Pretty format JSON console output
June 30, 2019
A neat little trick to gain effortless pretty printing of JSON output in your shell
-
Quick batch changes with Vim
June 17, 2019
This post is an example how to quickly use vim's scripting possibilities to manipulate text and perform repetitive tasks
-
More fine grained logging control in Python applications
June 2, 2019
This post describes a pattern for better control over where log messages are produced.
-
Logging pitfall in performance critical situations
April 30, 2019
Often people think logging does not impact performance when the logging level is high, but this is a misconception!
-
External code inclusion with Hakyll
April 21, 2019
I present two possible solutions to include external code snippets in Hakyll generated blog posts
-
Switching from Pelican to Hakyll
April 19, 2019
I replaced my static site generator from Pelican to Hakyll
-
Python Plugin for Neovim
February 20, 2019
How to write a simple text ID replacement plugin in Python for neovim
-
callCC in Haskell
February 2, 2019
A short investigation of the callCC function and how it works
-
Do-notation for Python
January 15, 2019
How to use do notation with monadic code in Python
-
Monadic computations in Python revisited
January 12, 2019
Extending the monadic computation examples from a previous post
-
Function Overloading in Python
January 1, 2019
A proof-of-concept implementation for function overloading in Python
-
Monadic computations in Python
December 28, 2018
Showcasing the effective use of monads to reduce boilerplate in Python
-
Haskell Conduit Walkthrough
September 18, 2018
A complete evaluation of a simple conduit pipeline in Haskell
-
How routing works in Scotty
August 29, 2018
A recipe for a light weight, flexible and functional style of protocol decoding
-
A functional approach to protocol decoding
August 23, 2018
A recipe for a light weight, flexible and functional style of protocol decoding
-
Haskell's Runtime System Options
May 1, 2018
Just a short note about Haskell's RTS options
-
HTML extraction in 4 languages
April 19, 2018
1 Task, 4 languages: Scraping HTML in Haskell, Clojure, Python and Go
-
Vagrant and Ansible
April 13, 2018
A quick summary how to set up Vagrant in combination with Ansible.
-
Haskell's async.mapConcurrently
April 10, 2018
Another code walk, this time for the mapConcurrently function of Haskell's async package
-
Haskell: Comparing scalpel with parsec-tagsoup
April 9, 2018
A comparison between two HTML scrappers: scalpel and tagsoup-parsec.
-
Comparing Haskell's Attoparsec with Python's pyparsing
March 30, 2018
In this post I write two parsers for the same data, one in Haskell the other in Python, and compare them.
-
Controlling the repository language on Github
March 26, 2018
This post explains how to control Github's heuristics to determine a repositorie's language.
-
I bought myself a Bonsai
March 25, 2018
The first post about my new bonsai and my way to learn this form of art
-
Announcing the chefkoch tool
March 25, 2018
A simple command line tool to extract recipes from a cooking website.
-
Cross compiling with autoconf
March 5, 2018
How to cross compile a program using GNU autoconf
-
Lispy lists continued
March 4, 2018
Implementing the lispy lists Python implementation in real functional programming languages
-
Haskell's prelude list index function
February 27, 2018
A case study of the awesome techniques of functional programming
-
Haskell Pipes Walkthrough
February 21, 2018
A complete evaluation of a simple pipeline in Haskell
-
Lispy lists in Python
February 5, 2018
How functional list processing can lead to easier code
-
Renaming annoying generic picture names
February 4, 2018
How to write a quick and dirty script to rename pictures.
-
Giving GHCi a fancy lamda prompt
January 27, 2018
How to set your GHCi REPL prompt to a literal lambda
-
Diverged branches
January 20, 2018
How I usually handle the case when my local branch has diverged with upstream.
-
A new Git repository from an existing one
January 20, 2018
Command set to create a new Git repository from parts of an existing Git repository
-
Links to Haskell FFI
January 9, 2018
A collection of useful links regarding Haskell and its FFI
-
Generic Folds in Haskell
January 7, 2018
A blog post about fix-point data types and generic folding
-
Python setup.py entry points
December 13, 2017
What exactly are entry points in setup.py script?
-
Text.ParserCombinators.ReadP
November 29, 2017
Some explanations and notes about the ReadP module
-
Lexical Scanning in Go
October 18, 2017
Me playing around with a lexical scanner in Go
-
Building Vim from source
October 3, 2017
Step by step instruction to build the vim editor from source
-
Sleeping for a certain amount of iterations
October 2, 2017
A patch for asyncio's sleep function to sleep for a given amount of iterations
-
A very important concept of asyncio
September 26, 2017
An insight into the the inner workings of Python's asyncio library
-
Vim text object
September 10, 2017
Vim text objects are a handy thing to know
-
How I currently use Vim
September 10, 2017
Vim is powerful right out of the box, but becomes even more powerful with the right configuration
-
Comply to the 80 characters text width standard
September 10, 2017
My current approach to the 80 characters text width standard in the Vim editor
-
Python Optional Dependencies
August 21, 2017
A reminder to myself about the packages that should be installed before installing Python from source
-
Mapping CAPS to ESC
August 9, 2017
Binding the caps lock key to the escape key increases productivity
-
Recreate vmlinuz, initrd and friends
August 1, 2017
Useful commands if you played to much with your Linux' */boot* folder
-
Linking Rust libraries
August 1, 2017
I learned an interesting lesson when I tried to link a Rust program against X11
-
Parser nomenclature
July 14, 2017
If you read about parser, some terms are a must to know
-
More quirks with Jenkins
July 14, 2017
I tripped over some Jenkins quirks again lately
-
Behaviour driven development with Python
July 14, 2017
Behaviour driven developement is a very popular development style. Python's package index has a few options to support that
-
Patching the docutils rst parser
June 22, 2017
Small rst parser tweak for HTML generation
-
Problems with big pictures
June 20, 2017
How to handle big pictures with restructured text
-
Helpfullness of Jenkins error messages
June 19, 2017
Jenkins error output is not easy to interpret
-
Jenkinsfiles
June 5, 2017
What I don't like about Jenkins' pipeline documentation