Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
31 views

An Introduction To Programming Languages

The document provides an introduction to various programming languages by discussing their origins and surveying their popularity among computer science students over time. It notes that FORTRAN was designed in the late 1950s and established as the language of choice for numeric programming. Pascal is described as the most widely taught introductory language, preceding Fortran and C. A survey from Dick Reid is summarized showing Pascal's popularity declining and C++ and Java increasing from the 20th to 13th editions.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
31 views

An Introduction To Programming Languages

The document provides an introduction to various programming languages by discussing their origins and surveying their popularity among computer science students over time. It notes that FORTRAN was designed in the late 1950s and established as the language of choice for numeric programming. Pascal is described as the most widely taught introductory language, preceding Fortran and C. A survey from Dick Reid is summarized showing Pascal's popularity declining and C++ and Java increasing from the 20th to 13th editions.
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

12/25/2018 An Introduction to Programming Languages

Tuesday 25, December Telugu Articles Education Home About Us Feedback Contact Us Search... Search

2018
Advertisement

Branches Guidance Jobs Skill Center Placements Downloads Expert's Corner GATE TSPSC Jobs

Study Material

Common Subjects ECE CSE & IT EEE Mechanical Civil Engineering

Like 170K

An Introduction to Programming Languages

The evolution of programming languages deals with the very need of scientific community to automate

the scientific calculations. Thus, these programming languages turned out to be the language of

science to express its nuances to computer for task completion. Every programming language targets
Useful Links
some set of needs, so it is essential that you develop an understanding of why there are so many Employment Opportunities

programming languages and their strengths and weaknesses. Let’s examine in short about all the Study Abroad
programming languages.
Admissions

GATE
FORTRAN 66, 1966
Scholarships
The original was designed by a team lead by Backus at IBM, in the late 50’s. The language quickly

established itself as the language of first choice for numeric programming Fellowships

Conferences

Pascal, 1975, ANSI & BSI 1982, ISO 1983, Extended Pascal 1991? Placement Guide
Pascal is the most widely taught programming language in computer science departments, as the
Skill Center
introductory programming language. It precedes Fortran and C languages. The following table
Events
summarizes the survey done by Dick Reid taken from a number of editions:–
Mock Tests
Language 20th 18th 15th 13th
Job Guidance
Pascal 140 144 151 157
Career Guidance
C++ 101 100 87 34
Academic Guidance
Ada 82 82 74 73

C 58 56 51 39
Related Topics
Scheme 50 49 51 50
Constructors and Destructors
Modula 32 32 32 35
Inheritance
Java 15 - - -
Polymorphism
Modula-2 14 15 15 13

Fortran 9 9 9 8 C++ & Object Oriented Programming


Concepts
SML 8 7 6 6
Methods (Member Functions) in
Turing 4 4 5 6 classes

Miranda 4 4 4 3 Pointers in C++

Smalltalk 4 4 4 1 Functions in C++

Eiffel 3 3 3 3
Pointers with Functions and Arrays
Oberon 3 3 2 2
Introduction to Classes and Objects
ISETL 2 2 2 2

http://sakshieducation.com/Engineering/StudyStory.aspx?nid=106073&cid=12&sid=666&chid=1107&tid=597 1/7
12/25/2018 An Introduction to Programming Languages

ML 2 2 2 1 Buzz Around
Modula-3 2 2 2 2

ObjPascal 2 2 2 1

Ada95 2 - - -

Haskel 2 1 1 1

Beta 1 1 1 1 Men, you don't need Winter Sale: Upto 90%


the blue pill if you do off on 1st copy luxury
this once daily! watches
Oberon-2 1 1 1 -
Testo Ultra Today's Buzz

Orwell 1 1 1 1

Prolog 1 1 1 1

Simula 1 1 1 1

Blue 1 - - -

Volvo XC60 - Award 11 Pools With Epic


Winning Luxury Views
VOLVO XC60 Booking.com

FORTRAN 77

FORTRAN was developed by IBM in 1950’s. It became a powerful language for scientists and

researchers coming very handy for numerical and scientific calculations. Also, this is widely used

programming language in super computers.

C language

C language was developed by Kernighan and Ritchie at Bell Labs. It was originally written for a PDP 11

under UNIX. It is based on the cpl, bcpl, b family of languages. Most of the UNIX tools are written in C. Of

its many uses, it is the best supported language to develop device drivers and operating systems.

Modula 2

Modula 2 was developed by Mr. Wirth’s. In prior to this he has developed languages Algol W and Pascal.

This was developed to meet the requirements of the operating system and application software for the

personal workstation Lilith-a workstation. Numeric work in Modula 2 isn’t very attractive as explicit type

casting is required in mathematical expressions.

Ada, ISO 8652: 1987

Ada was developed by the American Department of Defense. It is a high-level object-oriented

programming language. It is mainly targets embedded and real time systems.

Features of Ada include strong typing, modularity mechanisms (packages), run-time checking, parallel

processing, exception handling, dynamic programming and generics.

C++, 1986, Standard November 1997

C++ was developed by Stroustrup. C++ is an object oriented version of C. It scope to interact with the

machine instructions much more effectively. This has come out very handy for the applications that

requires the ability of C language and object oriented concepts.

Oberon 2

This is very clean and simple OOP language. This name arises from the voyager probe taking pictures of

Uranus Oberon is the largest moon. Oberon was simpler than Modula 2. First operational system was

developed in the late 1980s, where Oberon replaced Modula 2 in 1989 for teaching purposes at ETH

ported to Apple MAC, SUN, DEC, IBM RS6000 and MS/DOS by 1991.

Eiffel

http://sakshieducation.com/Engineering/StudyStory.aspx?nid=106073&cid=12&sid=666&chid=1107&tid=597 2/7
12/25/2018 An Introduction to Programming Languages

Eiffel is an attempt to produce an industrial strength OOP language.

Java

Java was developed by James Goslings. Java is a relatively simple object oriented language which

drives its inspiration from C++. For it this is portability at the object code level. Its major futures include:

It is interpreted and the intermediate byte code will run on any machine that has a Java virtual

machine.

It has built in garbage collection – no dispose!

It has no pointers – everything is passed by reference!

It is multithreaded, which makes it a delight for many applications

It has an extensive windows toolkit, the so called AWT.

Visual Basic

Visual Basic is a Microsoft product aimed for free flow programming and development of visual user

interfaces.

Language Comparison

The following symbols are used:–

Y: Supported with qualification, e g may be achieved using a different mechanism

‘-‘: not supported

‘?’: Unable to verify adequately at the time of writing

Simple Program Language Feature Comparison

Fortran Pascal C C++ Ada Java

66 77 90 Modula 2

Oberon 2

P M2 O2 C C++

Year 66 78 91 75 82 78 86 87 95 199?

82 96? 89 97

Feature

Independent Y Y Y - - - Y Y - - -

compilation

Separate - - Y - Y Y - Y Y Y Y

compilation

Concrete - - Y Y Y Y Y Y Y Y 1

data types

Abstract - - Y - Y Y - Y Y Y Y

data types

Dynamic - - Y - - - Y Y Y Y Y

arrays

Modules - - Y - Y Y - y y y y

See below

Numeric - - Y - ? Y - y y y -

Polymorphism

See below

General - - Y - ? Y - Y Y Y Y

Polymorphism

http://sakshieducation.com/Engineering/StudyStory.aspx?nid=106073&cid=12&sid=666&chid=1107&tid=597 3/7
12/25/2018 An Introduction to Programming Languages

Pointers - - Y Y Y Y Y Y Y Y 2

Procedure - - - Y Y Y Y Y ? ? ?

variables

Inheritance - - - - - S - M - S S

single/multi

Dynamic - - - - - Y - Y - Y Y

binding

Operator - - Y Y Y Y -

overloading

Threads - - - - Y ? - - ? Y Y

Tasking

Exception - - - ? ? - Y ? Y Y

Handling

Programming Language Features

Independent Compilation: It refers to the ability to break a problem down into parts and work on one part

at a time to check whether the program follows all the rules of the programming language or not.

Separate Compilation: As above with checking across compilation units, major step forward in the

construction of more complex programs Lint helps out with C. Concrete Data Types: These provide

flexibility for the user defined data types of his choice which will be mapped directly onto their problem.

Abstract Data Types (ADT): Data processing is the key purpose of the programming language, in this

process protection to data becomes very is also very important. This ADT comes out with concept of

data types and procedures that manipulated the data hiding the internals from the calling routine.

Dynamic arrays: Arrays that are allocated dynamically at run time

Modules

These modules intend to group the functions and procedures related to a particular decomposed set of

overall problem. This helps you to break the complete problem in to small units called modules and

write code accordingly. These normally have a well controlled mechanism for making visible what the

external, calling routine needs to have access to. Classes and packages are two terms also used

Pointers and References

Pointers allow you to access the memory location, thereby facilitating changes in quick time. Pointers in

a programming language extend the range of problems that can be solved considerably. Multi-

dimensional structures are easily programmed using pointers, e g: linked lists, queues, trees, quad-trees,

oct-trees, etc. The danger that pops in is data security, as the data memory location can be accessed

directly and destroyed.

Whereas in Java, pointer do not exist instead all objects are accessed via an object reference. When you

see an object variable in a Java program you actually see a reference to an object.

Inheritance

This is an object oriented paradigm, which under controlled way extends permission of data access and

procedures one class to be used by another class.

http://sakshieducation.com/Engineering/StudyStory.aspx?nid=106073&cid=12&sid=666&chid=1107&tid=597 4/7
12/25/2018 An Introduction to Programming Languages

Dynamic Binding

The second of the two major features of OO programming, provided in a limited sense via procedure

variables in older languages

Operator Overloading

This is very useful with numeric problems. Given that C++ has 47 operators it poses problems of

readability and comprehensibility with most other areas. This can be solved by operator overloading.

This is mostly implemented like functions or procedures.

Threads/Multitasking

Multitasking and/or threads are needed in a programming language when solving problems in the areas

of real-time systems, equipment interfacing, embedded systems and parallel programming

Exception Handling

Exception handling is needed in a programming language when solving problems in the areas of real-

time systems, equipment interfacing, embedded systems, parallel programming and robust systems

Structured Programming

Structured programming concerns itself with the development of programs using a small but sufficient

set of statements and in particular control statements. It has had a great effect on program language

design and most languages now support a minimal set of control structures. In a broader sense, it

subsumes other objectives including simplicity, comprehensibility, verifiability, modifiability and

maintenance of programs.

Object Oriented Programming Terminology

The following provides a link between conventional programming language terminology and that used in

object oriented programming.

Class: Extensible abstract data type

Object: Instance of a class

Message: Procedure call, dynamically bound

Method: Procedure of a class

Software Components

As the problems that we attempt to solve become more complex and the interfaces we provide become

more sophisticated we need better tools to help with program development. One major step forward is

in reusable software components. This can be seen as an extension to the object oriented approach to

programming.

COM, OLE, ActiveX

First let us define each of the above in turn:–

COM – Component Object Model

OLE – Object Linking and Embedding

ActiveX – Now called Active Technologies Let is look briefly at each in turn

ActiveX is a set of technologies that enables software components to interact with one an-other in a

networked environment, regardless of the language in which they were created ActiveX is built on the

Component Object Model.

http://sakshieducation.com/Engineering/StudyStory.aspx?nid=106073&cid=12&sid=666&chid=1107&tid=597 5/7
12/25/2018 An Introduction to Programming Languages

OLE or OLE makes one application to manipulate objects implemented in another application. A simple

example of this would be embedding a spreadsheet of graph from Excel in a Word document. Double

clicking on the spreadsheets drops you into Excel. There are some problems with this when working

with a document on a number of computer systems with different versions of the applications

concerned.

The Component Object Model (COM) is a platform independent, distributed object oriented system for

creating binary software documents that can interact. COM is the foundation technology for OLE and

ActiveX.

Published on 8/1/2015 11:50:00 AM

Tags:

FORTRAN Pascal C language Modula 2 Ada C++ Oberon 2 Eiffel Java Visual Basic

Programming Language Features Object Oriented Programming Terminology COM OLE ActiveX

Trending On Web

Microsoft Surface Go now World-class dental centers in Executive MBA for


available for pre-orders in India Hyderabad professionals. Residential…
PC MAG Smiline Amity Online Executive Program

When your team thrives, so Can your health insurance give Earn up to 6.25%*p.a. Interest
does your business you a global cover? with YES BANK
CPA Australia TATA AIG YES BANK

Home Branches Job Guidance Written Test Downloads


GATE CSE/IT Higher Education Material Study Material
Jobs ECE Study In India Mock Tests Common Subjects
Engineering Jobs EEE Study Abroad Company Profiles ECE
Bank Jobs Civil Skill Centre Previous Papers CSE/IT
Private Jobs Mechanical Soft Skills Success Speaks EEE
Walk-Ins Other Branches PPT And Seminar Short Term Courses Mechanical
Research/Scientist Academic Guidance Tips Scholarships Civil Engineering
Jobs Projects Employability Skills Fellowships Mock Tests
Defence Jobs Mock Tests English Skills Internships Embedded Systems
Faculty & Non-Faculty Articles Placements Events/Conferences C Language Practice
Miscellaneous Jobs Career Guidance Placement Guide Tech Updates Tests
Other Jobs Certifications Resume Tips Results Aptitude Practice Tests

http://sakshieducation.com/Engineering/StudyStory.aspx?nid=106073&cid=12&sid=666&chid=1107&tid=597 6/7
12/25/2018 An Introduction to Programming Languages
Fresher Jobs Guidance GD And JAM Tips Engg Telugu Articles General Quiz
Experienced Jobs Articles Interview Tips Experts Corner
Higher Education

Home | About Us | Feedback | Disclaimer | Contact Us at education@sakshi.com


Copyright © 2015 sakshieducation.com. All rights reserved.
Designed & Developed by Sakshi Education Division.
Site is Best viewed in Internet Explorer 9 & above with 1024 × 768 Resolution

http://sakshieducation.com/Engineering/StudyStory.aspx?nid=106073&cid=12&sid=666&chid=1107&tid=597 7/7

You might also like