It has been created by Alexander Kahl from a branch of evol in order to reach a broader audience. One might ask, "why in hell do we need another implementation of this terrifying language?" - it is because generating an AST from M4 code is impossible and GNU M4 doesn't offer enough means of hooking up into macro evaluation, thus only a powerful CL version might enable one to convert M4 or re-utilize libraries like GNU Autoconf.
Warning: Alpha stage!