Latest Activity In Study Groups

Join Your Study Groups

VU Past Papers, MCQs and More

We non-commercial site working hard since 2009 to facilitate learning Read More. We can't keep up without your support. Donate.

Assignment No. 01
SEMESTER Fall 2014
CS508- Modern Programming Languages

otal Marks: 20


Due Date: 19/11/2014



Please read the following instructions carefully before solving & submitting assignment:

It should be clear that your assignment will not get any credit  if:

  • The assignment is submitted after due date.
  • The submitted assignment does not open or file corrupt.
  • The assignment is full or partially copied from (other student or ditto copy from handouts or internet).
  • Student ID is not mentioned in the assignment File or name of file is other than student ID.
  • The assignment is not submitted .doc or .docx format.


Uploading instructions

Your submission must include:


  • Assignment should be in .doc or .docx format.
  • Save your assignment with your ID (e.g. bx020200786.doc).

Assignment submission through email is highly discouraged


The objective of this assignment is

  • To give some important knowledge and understanding of different criteria for comparing programming languages.



Your answer must follow the below given specifications.

  •  Font style: “Times New Roman”
  •  Font color: “Black”
  •  Font size: “12”
  •  Bold for heading only.
  •  Font in Italic is not allowed at all.
  •  No formatting or bullets are allowed to use.
  • Your answer should not exceed 10 lines each.

Lectures Covered: This assignment covers Lecture # 01 - 08


Your assignment must be uploaded/submitted at or before 19/11/2014.



Question No. 01:

a)      Language Comparison is not an easy task and need a deeper look of different aspects of programming languages. Readability is one of the important criteria for language comparison. What is the direct effect of poor readability on maintenance?                                                                                Marks: 03

b)      In which way the following factors affect the software readability?                                      Marks: 09

  1. Orthogonality
  2. Abstraction and
  3. Control statements



Question No. 02:

          Different criteria like Readability, portability and Reliability etc. is used for language comparison. Compare
          the following programming languages from Reliability, portability and Generality point of view.       

                                                                                                                                                                                  Marks: 08                                                                                                                                             

  2. ALGOL







For any query about the assignment, contact at




Views: 1127


Replies to This Discussion

koi start kary discussion

"What is the direct effect of poor readability on maintenance? "                                            is ka mtlb ha agr hm readability achy sy ni krain gy to kia disadvantages hon gy is k ye btana ha???    

Readability of a program measures how easily it can be understood. If a program is difficult to read, then it is difficult to implement and maintain. Since the maintenance stage is the longest stage in the software life cycle, it is important for a language to have high readability. The following reading discusses the factors that affect the readability of a language.

Number of exceptional rules (orthogonality). If a programming language has only a small number of rules and the exceptions to these rules are few, then the language is easier to learn and therefore easier to read. For example, all data in Smalltalk is object and all respond to the message class, which 

returns the class type of the object. Therefore, you should have no problem to understand the meaning when you encounter this statement. On the other hand, in Java, some data are primitive data while others are objects. Therefore you have to remember a different set of rules for primitive data and objects.

Control statements. It is known that program readability is severely reduced by indistinguishing usage of goto statements. If a programming language has sufficient control constructs, the need for goto statements can be nearly eliminated. This increases the readability.

4.Orthogonality: a relatively small set of primitive constructs can be combined in a relatively small number of ways. Every possible combination is legal. For example - in IBM assembly language there are different instructions for adding memory to register or register to register (non-orthogonal). In Vax, a single add instruction can have arbitrary operands.
lClosely related to simplicity - the more orthogonal, the fewer rules to remember.
lFor examples of non-orthogonality consider C++:
lWe can convert from integer to float by simply assigning a float to an integer, but not vice versa.
lWe can use a derived class instance in place of a parent class instance, but not vice versa.
lA switch statement works with integers, characters, or enumerated types, but not doubles.
lArrays are pass by reference while integers are pass by value.
lToo much orthogonality can also be a problem - sometimes get unnatural or extremely complex results. When any combination is legal, errors in writing programs can go undetected. Can accidentally use unknown features.
lFunctional languages (so named as computations are made primarily by applying functions to given parameters - Lisp, Prolog) are completely orthogonal and very simple as they have a single control construct - the function.

In contrast, an imperative language (like C++) have computations specified by variables and assignment statements

Abstraction means: complicated structures can be stated in simple ways by ignoring many of the details. The goal is to allow data structures, types, and operations to be defined and maintained as self contained abstractions   the programmer may use them in other parts of program knowing only abstract properties


      Procedures and functions are starts in this direction.
User defined types are a start
Black Box vs. Clear Box 


chck this to solv second q at the last of this page copmrision between fortran and algol igvn

thnk u frnds....

Tanku sooooooooooo much sumaira shabbir

welcom u alllll   

Please Discuss here about this assignment.Thanks

Our main purpose here discussion not just Solution

We are here with you hands in hands to facilitate your learning and do not appreciate the idea of copying or replicating solutions.


© 2021   Created by + M.Tariq Malik.   Powered by

Promote Us  |  Report an Issue  |  Privacy Policy  |  Terms of Service