Yes, when I started ENIGMA, it was for a couple reasons.
1) Mark thought compiling GML would be "too difficult." It was on his list of things that will never happen for that very reason. I thought he was wrong.
2) GM could no longer satisfy my need to experiment. I knew all the GML there was to know, and the bleeding edge of GM's progress was slow and cumbersome.
3) For a long time I thought it unfitting that there was a Java port of GM, but not a C one. I'd heard from many people that GML was syntactically similar to C, and I figured it was only a matter of time before someone would step up to the plate. When I was fed up with GM, That someone ended up being me.
The project has made it this far because there's always been another something to understand. As I've worked with C++, I've grown to love it more and more, and have likewise grown more efficient. As parts of the project fell into my immediate understanding and thus became too easy for my taste, I moved on to another set.
Now that I'm starting to understand all of C++ (very easy to do when you're writing a parser for it), the stuff once marked as boring and tedious is now marked as so simple, it can be done in a matter of minutes. For this reason, when all the hard parts are done, everything that remains will be child's play...
What keeps me going is Yoyo's infinite stupidity paired with my original commitment. Originally I didn't intend to use ENIGMA myself as I felt it was too limiting. But now that it can do C++... ahahahah, there is no limit.