In my experience, different programming lanugages have different ways of dealing with programmer errors. The following list, while not exhaustive, should highlight the tactics of some of the most popular languages (both past and present):
- QBasic – In keeping with the simplicity of its design, QBasic informs you of errors in nothing more than baby talk. For example, you may encounter “Out of Range!” or “Var not set!”
- C++ – A true bureaucrat, C++ gives you a ton of information which means nothing, making you feel very stupid in the process. After a few years, you think you’ve got a handle on it, then it throws out some new jargon you’ve never seen. For example:
“c:\documents and settings\new user\somefile.cpp(3) : error C2065: ‘cout’ : undeclared identifier
c:\documents and settings\new user\somefile.cpp(3) : error C2297: ‘<<' : illegal, right operand has type 'char [13]" - Java – Much like its C++ cousin, Java burdens you down with tons of details about what you’ve done wrong. It is supposedly smarter than C++ and tries to prove this with its gargantuan error messages. It even tries to offer remedies for your unholy instruction.
- PHP – The passive-aggressive language, PHP says almost nothing when you’ve done something wrong. It just presents you with blank screen whose source code contains nothing but a generic header. After a lot of massaging and appologizing, you can generally get it cranking the way it’s supposed to.
- Perl – Despite its name, Perl is not smooth at all when dealing with errors. It routinely screams the word “Die!” complete with the exclamation point. After panicking for a few seconds, you decide to dig into the code and see what exactly has died, only to find that you simply forgot a semi-colon. Talk about a manic, overly-dramatic performance.
- Python – Python is a bit dyslexic. It points to errors in the wrong place, swearing up and down you’ve messed up in a particular location, when if fact you actually messed up somewhere several lines above. Being called a liar by a programming language is probably the most insulting thing possible.
This is a simple test to make sure I haven’t broken anything.