This post is dedicated to describing a wonderful and beautiful small algorithm that is not widely known. It allows to pick a random element among an enumerated distribution of elements, where each element is associated a weight. This need is frequently encountered, for instance in property based testing libraries. In test.check, it correspond to the... Continue Reading →
10 things Idris improved over Haskell
The 1.0.0 of Idris has been released just a few months back, just enough to start trying out the language and some of the possibilities dependent typing offers. But this post is not about dependent typing. There is already a really good book that came out this year, named Type Driven Development with Idris, exploring... Continue Reading →
Lisp Meta-Programming for C++ Developers: Automatic traces (Part 2)
In the previous posts, we started a series dedicated to familiarize C++ developers to the world of LISP meta-programming, based on the Clojure programming language. The goal is to offer a different perspective on meta-programming, how we can approach it, and the kind of use cases it can address. We started the series by an... Continue Reading →
Clojure High Performance Fibonacci
Having recently finished reading the Clojure programming book named Clojure: High Performance JVM Programming, I found in it quite a bunch of useful information to increase the performance of Clojure (and more generally JVM-based) applications. The book contains many examples of different constructs we can use in Clojure to increase the performance of arithmetic operations.... Continue Reading →