Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 5

3.

PROGRAMMING LANGUAGES

EXERCISE 1. Study the topical vocabulary.

1. to execute виконати
2. statement вираз, програма
3. to correspond відповідати
4. meaningful той, що має сенс, значимий
5. beneficial корисний
6. to vary відрізнятись
7. complexity складність
8. assembly language мова асемблера
9. property властивість
10.attribute властивість
11.to contain містити
12.to allow дозволяти, враховувати
13.to enable дозволяти
14.entirely повністю
15.to represent представляти
16.instead of замість
17.improvement покращення
18.to inherit успадковувати
19.constraint обмеження
20.array масив
21.binary двійковий
22.support підтримка
23.management управління
24.routine програма
25.solution рішення

EXERCISE 2. Match the synonyms.

1. to execute a) to get
2. to retrieve b) difficulty
3. beneficial c) useful
4. to vary d) to differ
5. complexity e) portable
6. property f) to enable
7. to contain g) to save
8. to allow h) to include
9. to store i) attribute
10.wearable j) to perform

EXERCISE3. Read and translate the text.


Programming Language Generations
Computer programming languages allow people to give instructions to a
computer in a language the computer understands. Just as many human-based
languages exist, there are an array of computer programming languages that
programmers can use to communicate with a computer. The portion of the
language that a computer can understand is called a “binary.” Translating
programming language into binary is known as “compiling.” Each language, from
C Language to Python, has its own distinct features, though there are a lot of
commonalities between programming languages.
Programming languages have been classified into several programming
language generations. The first generation of programming language (1GL) is the
machine language. The instructions in 1GL are made of binary numbers,
represented by 1s and 0s. Machine language statements are written in a binary
code, and each statement corresponds to one machine action. This makes the
language suitable for the understanding by the machine but far more difficult to
interpret and learn by the human programmer. Currently, programmers almost
never write programs directly in machine code, because it requires attention to
numerous details that a high-level language handles automatically. Furthermore, it
requires memorizing or looking up numerical codes for every instruction, and is
extremely difficult to modify.
The second generation programming language, or 2GL, is assembly language.
Assembly language is a low-level programming language. Using it, programmers
can write human-readable programs that correspond almost exactly to machine
language. In general, one line of an assembly program contains a maximum of one
instruction for the computer. The disadvantage is that everything the computer
does must be described in precise detail. The advantage is that the programmer has
maximum control over what the computer is doing. An assembly language
programmer writes instructions using symbolic instruction codes that are
meaningful abbreviations. Assembly code is converted into executable machine
code by an assembler.
In the first and second generation programming languages, the program is
written specifically for a certain type of CPU and instruction set. However, a third-
generation programming language (3GL) is a programming language that is
machine-independent, meaning programs written in that language can be compiled
to run on many different devices.3GLs first appeared in the 1950s with the
development of FORTRAN, ALGOL, and COBOL. 3rd generation languages are
high-level languages. They use a series of English like words, that are closer to
human language, to write instructions. High-level programming languages make
complex programming simpler and easier to read, write and maintain. Programs
written in a high-level programming language must be translated into machine
language by a compiler or interpreter. PASCAL, FORTRAN, BASIC, COBOL, C
and C++ are examples of third generation programming languages. Updated
versions of all of these 3GLs are still in general use.
The concept of 4GL was developed from the 1970s through the 1990s. The
fourth generation programming languages are closer to human language than other
high-level languages and can be accessible to people even without formal training
as programmers. They allow multiple common operations to be performed with a
single programmer-entered command. They are intended to be easier for users and
include support for database management, report generation, mathematical
optimization, GUI development, or web development. They are often referred to as
goal-oriented programming languages because they are usually limited to a very
specific application and might use syntax that is never used in other programming
languages. SQL, NOMAD and FOCUS are examples of fourth generation
programming languages. While 3GLs like C, C++, C#, Java, and JavaScript remain
popular for a wide variety of uses, 4GLs as originally defined found narrower uses.
A fifth-generation programming language (5GL) is a programming
language based on problem solving using constraints given to the program, rather
than using an algorithm written by a programmer. In essence, the programming
language is used to denote the properties, or logic, of a solution, rather than how it
is reached. While fourth-generation programming languages are designed to build
specific programs, fifth-generation languages are designed to make the computer
solve a given problem without the programmer. This way, the user only needs to
worry about what problems need to be solved and what conditions need to be met,
without worrying about how to implement a routine or algorithm to solve them.
Fifth-generation languages are used mainly in artificial
intelligence research. Prolog,OPS5 and Mercury are examples of fifth-generation
languages.

EXERCISE 4. Reread the text and find English equivalents of Ukrainian


word combinations.

Двійкові числа, набір інструкцій, кожен вираз відповідає одній дії машини,
запустити програму, доступний людям, значимі скорочення, дозволяє людям
взаємодіяти з комп’ютерами, візуальна середа програмування,
багаточисельні операції, керування базами даних, орієнтований для
досягнення цілей, вирішувати завдання, дослідження штучного інтелекту,
використовуючи обмеження, визначати властивості.

EXERCISE 5. Answer the questions.

1. What is the main function of computer programming languages?


2. What kind of language can a computer understand?
3. What is compiling?
4. What are the key characteristics of the machine language statements?
5. Do modern programmers write programs in a machine code? Why?
6. What is an assembly language?
7. What is the function of an assembler?
8. What are the key features of the third-generation programming languages?
9. Are the third-generation programming languages still in general use? Give
examples.
10.Why are the fourth-generation languages often referred to as goal-oriented
programming languages?
11.What is the principle of work of the fifth-generation programming
languages?
12.Where are the fifth-generation languages mainly used?

EXERCISE 6. Read the texts. Fill in the gaps with the proper word. Be
ready to tell the difference between structured (procedure-oriented) and
object-oriented programming.

employ uses broken known include means drawn

Procedure-oriented programming:
Structured programming often (1) ______ a top-down design model where
developers map out the over all program structure into separate subsections from
top to bottom. In the top-down design model, programs are (2) _____ as
rectangles. A top-down design means that the whole program is (3) _____ down
into smaller sections that are (4) ______ as modules. A program may have a
module or several modules. Structured programming is beneficial for organising
and coding computer programs which (5) _____ a hierarchy of modules. This (6)
______ that control is passed downwards only through the hierarchy. Examples of
structured programming languages (7) _____ ADA, Pascal and Fortran.

called defined containre presents specify create

Object-oriented programming:
A type of programming where data types representing data structures are (1)
_______ by the programmer as well as their properties and the things that can be
done with them. With object-oriented programming, programmers can also (2)
________ relationships between data structures and create new data types based on
existing ones by having one data type inherit characteristics from another one. In
object-oriented programming, data types defined by the programmer are (3)
________ classes. For example, a programmer can create a data type that (4)
________ a car – a car class. This class can (5) _______ the properties of a car
(color, model, year, etc.) and functions that (6) ________ what the car does (drive,
reverse, stop, etc.)
One of the earliest OOP languages is Smalltalk. Java, Visual Basic and C++
are examples of popular OOP languages.

EXERCISE7. Describe the terms.

e.g. A computer program is a set of instructions that performs a specific task


when executed by a computer.
A computer program, programming language, assembler, interpreter, compiler, a
high-level language, a low-level language, a machine code
EXERCISE 8. Tell the groupmates.

• what characteristics languages of different generations have;


• what procedure-oriented languages you know and what they are used for;
• what object-oriented languages you know and why they are used.

EXERCISE9. Prepare a report on one of the topics.

1. Object-oriented programming – pros and cons.


2. Anyone can become a programmer – agree or disagree.
3. What is better – to work on one big project or perform many small ones?

You might also like