Functional Julia – based on fogus/lemonad