Silvertejp is a preprocessor language. It combines UML class diagrams with the object-oriented programming language (pl) of your choice. It translates class diagrams to the destination pl of your choice.
Silvertejp uses an ASCII notation that allows you to blend source code with the class diagram, supporting almost all UML-elements defined in the class diagram meta-model version 1.4 from the Object Management Group.
Java is currently the only supported pl, but it would be a piece of cake for any cross/java programmer to make it support Python, Smalltalk, C#, etc.