  Programming is an integral part of computer science discipline. Every day the
programming environment is not only rapidly growing but also changing and
languages are constantly evolving. Learning of object-oriented paradigm is
compulsory in every computer science major so the choice of language to teach
object-oriented principles is very important. Due to large pool of
object-oriented languages, it is difficult to choose which should be the first
programming language in order to teach object-oriented principles. Many studies
shown which should be the first language to tech object-oriented concepts but
there is no method to compare and evaluate these languages. In this article we
proposed a comprehensive framework to evaluate the widely used object-oriented
languages. The languages are evaluated basis of their technical and
environmental features.
