Functional interpreter for the bf programming language