Good programming practice [whether in Oracle or any other software environment] is to NOT rely on implicit conversion of datatypes. Particularly if you are working with multiple languages. Also, when you go through an upgrade to a new version.
Tom Kyte always recommends Explicit Conversion of DataTypes. However, he acknowledges the occassion when he did not follow his own advice -- and he was embarrassed in front of his audience.