UMMF - it's written in perl, and apparantly can generate Perl , Java and Tangram code. I haven't tried it, so I can't really tell you more.
update:
Oh yes, I really really like TCM for diagram editing. Its UML implementation is not 100% complete, but it's fast and small and works on linux and cygwin, and it's free (GPL)