This looks like a nice language! Lots of syntactic niceties, and it looks extremely feature complete.
Nice work! I'm not surprised you learned a lot given how many features it supports!
It's probably easiest to begin with a Lisp dialect, since a basic one needs only two data types (singly-linked lists and symbols) and its eval function is so simple. Peter Norvig has a great tutorial[2] on implementing a Lisp in Python.
Beyond that, it can be helpful to look at the source code for other languages similar to what you're looking to create, to get a sense of how they do things.
That's more or less what I found helpful, in any case. Good luck!
[1] http://patshaughnessy.net/ruby-under-a-microscope [2] http://norvig.com/lispy.html
Parser generators usually have a very limited number of target languages, so you might find yourself stuck into a language you do not want to code in.
I started out with Yacc, though, and that helped me out a lot more...