Module 1 - Programming Language Paradigms, Types and Uses Flashcards
Categories of Programming Languages
Procedural
Functional
Object-Oriented
Scripting
Logic
A PL category used to execute a sequence of statements which lead to a result.
Uses multiple variables, heavy loops and other elements, which separates them from functional programming languages.
Example Method: printing out information
BASIC, C, FORTRAN, Java, Pascal
Procedural PL
A PL category that uses stored data, frequently avoiding loops in favor of recursive functions.
Primary focus is on the return values of functions, and effects of storing state.
Focuses on results, not the process.
Emphasis is on what is to be computed
Data is immutable (cannot be changed)
Decomposes the problem into functions
It is built on the concept of mathematical functions which uses conditional expressions and recursion to do perform the calculation
It does not support iteration like loop statements and conditional statements like If-Else
Functional PL
A PL category where programs are organized around data, or objects, rather than functions and logic.
An object can be defined as a data field that has unique attributes and behavior.
Examples of an object can range from physical entities, such as a human being that is described by properties like name and address, down to small computer programs, such as widgets.
This opposes the historical approach to programming where emphasis was placed on how the logic was written rather than how to define the data within the logic.
Object-Oriented PL
A PL category that is Basically a language where instructions are written for a run time environment.
Do not require the compilation step and are rather interpreted. It brings new functions to applications and glue complex system together.
Designed for integrating and communicating with other programming languages.
Scripting PL
A PL category that state a program as a set of logical relations (e.g., a grandparent is the parent of a parent of someone).
PROLOG is the best known
Such languages are similar to the SQL database language.
A program is executed by an “inference engine” that answers a query by searching these relations systematically to make inferences that will answer a query.
PROLOG has been used extensively in natural language processing and other AI programs.
Logic PL
One of the earliest computers that is considered as the legacy computer where most new computers were built out of.
Analytical Engine
The Analytical Engine was made by who?
Charles Babbage
Why were Programming Languages made?
To make things easier and faster to do.
When was the first computer programming language born?
1883
Created an algorithm for the Analytical Engine.
Worked on making the computer represent more than just numbers.
Ada Lovelace
A generic term for a family of early computer programming languages.
Autocode 1952
A computer programming language created by John Backus for complicated scientific, mathematical, and statistical work
Fortran (Formula Translation) 1957
Created by a committee for scientific use. Served as a starting point in the development of languages such as Pascal, C, C++, and Java.
Algol (Algorithmic language) 1958
A computer programming language that can run on all brands and types of computers.
Used in ATMs, credit card processing, telephone systems, hospital and government computers, automotive systems, and traffic signals.
COBOL (Common Business Oriented Language) 1959
Originally made for artificial intelligence research but at present time, can be used in circumstances where Ruby or Python are used.
LISP (List Processing Language): 1959
Created so that students who were not technical or mathematically inclined could still use computers
BASIC (Beginner’s All-purpose Symbolic Instruction Code): 1964
Initially created to teach computer programming.
Was the main language used for software development in Apple’s early years.
Named after a French mathematician
Pascal: 1972
Allowed computer programmers to modify code on the fly and also introduced other aspects now present in common computer programming languages including Python, Java, and Ruby.
Smalltalk: 1972
Considered by many to be the first high-level language.
Was created so that an operating system called Unix could be used on many different types of computers.
It has influenced many other languages, including Ruby, C#, Go, Java, JavaScript, Perl, PHP, and Python.
C: 1972
It is used for viewing and changing information that is stored in databases.
Uses command sentences called queries to add, remove, or view data.
SQL: 1972
It is one of the best computer programming languages for writing mathematical programs and is mainly used in mathematics, research, and education.
It can also be used to create two- and three-dimensional graphics.
MATLAB (Matrix Laboratory): 1978
The main computer programming language used when writing software for macOS and iOS, Apple’s operating systems.
Objective-C: 1983
An extension of the C language and was developed by Bjarne Stroustrup.
It is one of the most widely used languages in the world.
Is used in game engines and high-performance software like Adobe Photoshop.
C++: 1983