I find that it works best to program in the language you are using rather than try to force the language into the mold of your preferred programming style. So when programming in C++, for example, I design solutions that fit C++ and only rarely wish for features of other languages.
That concept is very much similar to the way fluency in a verbal language works. English is my first language, but when I achieved fluency in Portuguese, I found it much easier, when speaking Portuguese, to simply think and express all in Portuguese. Formulating thoughts in English and translating them to Portuguese on-the-fly is cumbersome, and tends to force expression down into the baby-talk realm. You're simply better off thinking and interacting in the language of choice at the moment. Occasionally one finds oneself wishing that a certain word existed in another language, but for the most part it's inconvenient to hold up a conversation while focusing on wrapping an English means of expression in a Portuguese idiom.
I guess that parallel is one of the reasons why programming languages are called programming languages.