C and Java seem more alike in that respect so I’m confused why you don’t consider Java to be transparent. What then do you mean by “transparency” with respect to programming languages?

I prefer languages with static-typing for the type-checking, refactoring and IDE enhancements – but also like scripting languages for not having to wait for code to compile.

In my mind something would be less transparent if it’s hard to work out the intention of the code, or if the type of a variable. In some ways the PHP language in a lot like Java too – so I don’t see how it could be considered more transparent. I must be missing something.