This document discusses different programming paradigms and languages. It begins by defining unstructured programming as a paradigm where the entire program logic is written as a single continuous block, making it difficult to modify and debug. It then covers structured programming which divides programs into smaller, independently testable modules or functions. Object-oriented programming models programs around real-world objects. The document also discusses machine language, assembly language, procedural languages, and different generations of languages from low-level to high-level.
In this session you will learn about
- Introduction of Languages
- Difference between POP and OOP
- What is OOP?
- Object-Oriented Programming
- Advantages of OOP
- Object-Oriented Programming Paradigm
- Features of OOP
- Applications of Object Oriented Programming
- Benefits of Object Oriented Programming
In this session you will learn about
- Introduction of Languages
- Difference between POP and OOP
- What is OOP?
- Object-Oriented Programming
- Advantages of OOP
- Object-Oriented Programming Paradigm
- Features of OOP
- Applications of Object Oriented Programming
- Benefits of Object Oriented Programming
Introduction to C++ : Object Oriented Technology, Advantages of OOP, Input- output in
C++, Tokens, Keywords, Identifiers, Data Types C++, Derives data types. The void data
type, Type Modifiers, Typecasting, Constant
Intro to JAVA
Basics of Oops
Features of Oops
Applications of Oops
How to create a JAVA program
How to Edit a Java Program
Compiling a Java program
Java Class file
Run or Executing a Java program
Command line arguments
Introduction to C++ : Object Oriented Technology, Advantages of OOP, Input- output in
C++, Tokens, Keywords, Identifiers, Data Types C++, Derives data types. The void data
type, Type Modifiers, Typecasting, Constant
Intro to JAVA
Basics of Oops
Features of Oops
Applications of Oops
How to create a JAVA program
How to Edit a Java Program
Compiling a Java program
Java Class file
Run or Executing a Java program
Command line arguments
Model Attribute Check Company Auto PropertyCeline George
In Odoo, the multi-company feature allows you to manage multiple companies within a single Odoo database instance. Each company can have its own configurations while still sharing common resources such as products, customers, and suppliers.
Francesca Gottschalk - How can education support child empowerment.pptxEduSkills OECD
Francesca Gottschalk from the OECD’s Centre for Educational Research and Innovation presents at the Ask an Expert Webinar: How can education support child empowerment?
2024.06.01 Introducing a competency framework for languag learning materials ...Sandy Millin
http://sandymillin.wordpress.com/iateflwebinar2024
Published classroom materials form the basis of syllabuses, drive teacher professional development, and have a potentially huge influence on learners, teachers and education systems. All teachers also create their own materials, whether a few sentences on a blackboard, a highly-structured fully-realised online course, or anything in between. Despite this, the knowledge and skills needed to create effective language learning materials are rarely part of teacher training, and are mostly learnt by trial and error.
Knowledge and skills frameworks, generally called competency frameworks, for ELT teachers, trainers and managers have existed for a few years now. However, until I created one for my MA dissertation, there wasn’t one drawing together what we need to know and do to be able to effectively produce language learning materials.
This webinar will introduce you to my framework, highlighting the key competencies I identified from my research. It will also show how anybody involved in language teaching (any language, not just English!), teacher training, managing schools or developing language learning materials can benefit from using the framework.
Unit 8 - Information and Communication Technology (Paper I).pdfThiyagu K
This slides describes the basic concepts of ICT, basics of Email, Emerging Technology and Digital Initiatives in Education. This presentations aligns with the UGC Paper I syllabus.
Read| The latest issue of The Challenger is here! We are thrilled to announce that our school paper has qualified for the NATIONAL SCHOOLS PRESS CONFERENCE (NSPC) 2024. Thank you for your unwavering support and trust. Dive into the stories that made us stand out!
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...Levi Shapiro
Letter from the Congress of the United States regarding Anti-Semitism sent June 3rd to MIT President Sally Kornbluth, MIT Corp Chair, Mark Gorenberg
Dear Dr. Kornbluth and Mr. Gorenberg,
The US House of Representatives is deeply concerned by ongoing and pervasive acts of antisemitic
harassment and intimidation at the Massachusetts Institute of Technology (MIT). Failing to act decisively to ensure a safe learning environment for all students would be a grave dereliction of your responsibilities as President of MIT and Chair of the MIT Corporation.
This Congress will not stand idly by and allow an environment hostile to Jewish students to persist. The House believes that your institution is in violation of Title VI of the Civil Rights Act, and the inability or
unwillingness to rectify this violation through action requires accountability.
Postsecondary education is a unique opportunity for students to learn and have their ideas and beliefs challenged. However, universities receiving hundreds of millions of federal funds annually have denied
students that opportunity and have been hijacked to become venues for the promotion of terrorism, antisemitic harassment and intimidation, unlawful encampments, and in some cases, assaults and riots.
The House of Representatives will not countenance the use of federal funds to indoctrinate students into hateful, antisemitic, anti-American supporters of terrorism. Investigations into campus antisemitism by the Committee on Education and the Workforce and the Committee on Ways and Means have been expanded into a Congress-wide probe across all relevant jurisdictions to address this national crisis. The undersigned Committees will conduct oversight into the use of federal funds at MIT and its learning environment under authorities granted to each Committee.
• The Committee on Education and the Workforce has been investigating your institution since December 7, 2023. The Committee has broad jurisdiction over postsecondary education, including its compliance with Title VI of the Civil Rights Act, campus safety concerns over disruptions to the learning environment, and the awarding of federal student aid under the Higher Education Act.
• The Committee on Oversight and Accountability is investigating the sources of funding and other support flowing to groups espousing pro-Hamas propaganda and engaged in antisemitic harassment and intimidation of students. The Committee on Oversight and Accountability is the principal oversight committee of the US House of Representatives and has broad authority to investigate “any matter” at “any time” under House Rule X.
• The Committee on Ways and Means has been investigating several universities since November 15, 2023, when the Committee held a hearing entitled From Ivory Towers to Dark Corners: Investigating the Nexus Between Antisemitism, Tax-Exempt Universities, and Terror Financing. The Committee followed the hearing with letters to those institutions on January 10, 202
The Roman Empire A Historical Colossus.pdfkaushalkr1407
The Roman Empire, a vast and enduring power, stands as one of history's most remarkable civilizations, leaving an indelible imprint on the world. It emerged from the Roman Republic, transitioning into an imperial powerhouse under the leadership of Augustus Caesar in 27 BCE. This transformation marked the beginning of an era defined by unprecedented territorial expansion, architectural marvels, and profound cultural influence.
The empire's roots lie in the city of Rome, founded, according to legend, by Romulus in 753 BCE. Over centuries, Rome evolved from a small settlement to a formidable republic, characterized by a complex political system with elected officials and checks on power. However, internal strife, class conflicts, and military ambitions paved the way for the end of the Republic. Julius Caesar’s dictatorship and subsequent assassination in 44 BCE created a power vacuum, leading to a civil war. Octavian, later Augustus, emerged victorious, heralding the Roman Empire’s birth.
Under Augustus, the empire experienced the Pax Romana, a 200-year period of relative peace and stability. Augustus reformed the military, established efficient administrative systems, and initiated grand construction projects. The empire's borders expanded, encompassing territories from Britain to Egypt and from Spain to the Euphrates. Roman legions, renowned for their discipline and engineering prowess, secured and maintained these vast territories, building roads, fortifications, and cities that facilitated control and integration.
The Roman Empire’s society was hierarchical, with a rigid class system. At the top were the patricians, wealthy elites who held significant political power. Below them were the plebeians, free citizens with limited political influence, and the vast numbers of slaves who formed the backbone of the economy. The family unit was central, governed by the paterfamilias, the male head who held absolute authority.
Culturally, the Romans were eclectic, absorbing and adapting elements from the civilizations they encountered, particularly the Greeks. Roman art, literature, and philosophy reflected this synthesis, creating a rich cultural tapestry. Latin, the Roman language, became the lingua franca of the Western world, influencing numerous modern languages.
Roman architecture and engineering achievements were monumental. They perfected the arch, vault, and dome, constructing enduring structures like the Colosseum, Pantheon, and aqueducts. These engineering marvels not only showcased Roman ingenuity but also served practical purposes, from public entertainment to water supply.
Introduction to AI for Nonprofits with Tapp NetworkTechSoup
Dive into the world of AI! Experts Jon Hill and Tareq Monaur will guide you through AI's role in enhancing nonprofit websites and basic marketing strategies, making it easy to understand and apply.
How libraries can support authors with open access requirements for UKRI fund...
PCCF-UNIT 2-1 new.docx
1. 1111UNIT TWO
PROGRAMMING PARADIGMS
UNSTRUCTURED PROGRAMMING
A programming language in which the entire logic of the program is written as a single
continuous (nonstop or unbroken) block is called "unstructured Programming".
Programs written by following this language is very difficult to modify and to debug.
It is historically the earliest programming paradigm
Followed historically by procedural programming and then object-oriented programming,
both of them considered as structured programming.
Produces spaghetti code i.e. hardly-readable code. It is considered a bad approach for
creating major projects although it also offers freedom to programmers to design their
program in their way.
There are both high- and low-level programming languages that use non-structured
programming.
For example: early versions of BASIC (such as MSX BASIC and GW-BASIC),
JOSS, FOCAL, MUMPS, TELCOMP, COBOL, machine-level code, early
assembler systems (without procedural metaoperators), assembler debuggers and
some scripting languages such as MS-DOS batch file language.
BASIC CONCEPT
A program in a non-structured language usually consists of sequentially ordered
commands, or statements, usually one in each line. The lines are usually
numbered or may have labels: this allows the flow of execution to jump to any
line in the program.
It also introduces basic control flow concepts such as loops, branches and jumps
There is no concept of procedures in the non-structured paradigm, subroutines are
allowed. [Unlike a procedure, a subroutine may have several entry and exit points,
and a direct jump into or out of subroutine is (theoretically) allowed]
No concept of local variables in non-structured programming
There is no (automatic) context refresh when calling a subroutine, so all variables
might retain their values from the previous call.
The depth of nesting also may be limited to one or two levels.
DATA TYPES
Allows only basic data types, such as numbers, strings and arrays
2. STRUCTURED PROGRAMMING
A programming language in which the entire logic of the program is written by dividing it into
smaller units or modules is called "structured programming Language".
In C, the smaller units are referred to as functions.
A function is written separately to perform a specific task. Each function has a unique
name. It is called for execution in the main body of program with reference to its name.
Program written in structured programming language is very easy to modify and to
debug.
For example: C language.
Elements of structured programming
Control structures
Following the structured program theorem, all programs are seen as composed of three control
structures:
"Sequence"-ordered statements or subroutines executed in sequence.
"Selection"- one or a number of statements is executed depending on the state of the
program. This is usually expressed with keywords such as if..then..else..endif.
"Iteration"-a statement or block is executed until the program reaches a certain state, or
operations have been applied to every element of a collection. This is usually expressed
with keywords such as while, repeat, for or do..until.
Subroutines
Callable units such as procedures, functions, methods, or subprograms are used to allow a
sequence to be referred to by a single statement.
Blocks
Blocks are used to enable groups of statements to be treated as if they were one statement.
Block-structured languages have a syntax for enclosing structures in some formal way, such as
an if-statement bracketed by if..fi or a code section bracketed by BEGIN..END, or the curly
braces {...} of C and many later languages.
Structured Language Unstructured language
1 Code compartmentalization can be done ode compartmentalization cannot be
done
2 Loops can be created Loops cannot be created
3 hese are new languages hese are old languages
4 Do not require a strict field concept. Strict field concept is used mostly.
5 xamples: C, C++, JAVA, ADA, PASCAL,
MODULA -2
Examples: BASIC, COBOL,
FORTRAN
3. OBJECT ORIENTED PROGRAMMING
Object means a real word entity such as pen, chair, table etc. Object-Oriented Programming is
a methodology or paradigm to design a program using classes and objects.Object-oriented
programming (OOP) is a programming language model organized around "objects" rather than
"actions" and data rather than logic
The first step in OOP is to identify all the objects the programmer wants to manipulate
and how they relate to each other, an exercise often known as data modeling.
Once an object has been identified, it is generalized as a class of objects which defines
the kind of data it contains and any logic sequences that can manipulate it.
Each distinct logic sequence is known as a method. Objects communicate with well-
defined interfaces called messages.
Basic concepts of OOP
Object
Any entity that has state and behavior is known as an object. For example: chair, pen, table,
keyboard, bike etc. It can be physical and logical.
Class
Collection of objects is called class. It is a logical entity.Classes define:
Set of attributes
Also called state
Represented by variables and properties
Behavior
Represented by methods
Inheritance
4. When one object acquires all the properties and behaviors of parent object that is known as
inheritance. The child will have all the properties of the parent and can have its own additional
properties as well.
Polymorphism
When one task is performed by different ways, it is known as polymorphism. For example:
water exists in 3 different forms- ice, water (liquid) and water vapor.
Abstraction
Hiding internal details and showing functionality is known as abstraction. For example:
phone call, we don't know the internal processing.
Encapsulation
Binding (or wrapping) code and data together into a single unit is known as encapsulation.
For example: capsule, it is wrapped with different medicines.
Some advantages of OOPs over Procedure-oriented programming language
1. Emphasis is on data rather than procedure.
2. Programs are divided into objects.
3. Data Structures are designed such that they characterize the objects.
4 Methods that operate on the data of an object are tied together in the data structure.
5 Data is hidden and cannot be accessed by external functions.
6 Objects may communicate with each other through methods.
7 New data and methods can be easily added whenever necessary.
8 Bottom-up approach
POP OOP
1 In POP, program is divided into small parts
called functions
program is divided into parts called
objects
2 Importance is not given to data but to
functions as well as sequence of actions to be
done.
Importance is given to the data rather than
procedures or functions because it works
as a real world
3 Top Down approach Bottom Up approach
4 Data can move freely from function to
function in the system
objects can move and communicate with
each other through member functions
5 To add new data and function in POP is not
so easy
OOP provides an easy way to add new
data and function.
6 Most function uses Global data for sharing
that can be accessed freely from function to
function in the system
datacan not move easily from function to
function,it can be kept public or private so
we can control the access of data.
7 does not have any proper way for hiding data
so it is less secure.
provides Data Hiding so provides more
security.
5. 8 Example of POP are : C Example of OOP are : C++, JAVA,
VB.NET, C#.NET.
CHARACTERISTICS OF A GOOD COMPUTER PROGRAM
A good computer program should have following characteristics:
Portability: Portability refers to the ability of an application to run on different platforms
(operating systems) with or without minimal changes. Due to rapid development in the
hardware and the software, nowadays platform change is a common phenomenon. Hence,
if a program is developed for a particular platform, then the life span of the program is
severely affected.
Readability: The program should be written in such a way that it makes other
programmers or users to follow the logic of the program without much effort. If a
program is written structurally, it helps the programmers to understand their own
program in a better way. Even if some computational efficiency needs to be sacrificed for
better readability, it is advisable to use a more user-friendly approach, unless the
processing of an application is of utmost importance.
Efficiency: Every program requires certain processing time and memory to process the
instructions and data. As the processing power and memory are the most precious
resources of a computer, a program should be laid out in such a manner that it utilizes the
least amount of memory and processing time.
Structural: To develop a program, the task must be broken down into a number of
subtasks. These subtasks are developed independently, and each subtask is able to
perform the assigned job without the help of any other subtask. If a program is developed
structurally, it becomes more readable, and the testing and documentation process also
gets easier.
Flexibility: A program should be flexible enough to handle most of the changes without
having to rewrite the entire program. Most of the programs are developed for a certain
period and they require modifications from time to time. For example, in case of payroll
management, as the time progresses, some employees may leave the company while
some others may join. Hence, the payroll application should be flexible enough to
incorporate all the changes without having to reconstruct the entire application.
Generality: Apart from flexibility, the program should also be general. Generality means
that if a program is developed for a particular task, then it should also be used for all
similar tasks of the same domain. For example, if a program is developed for a particular
organization, then it should suit all the other similar organizations.
Documentation: Documentation is one of the most important components of an
application development. Even if a program is developed following the best
programming practices, it will be rendered useless if the end user is not able to fully
utilize the functionality of the application. A well-documented application is also useful
for other programmers because even in the absence of the author, they can understand it.
6. TYPES OF PROGRAMMING LANGUAGE
A programming language is a formal constructed language designed to communicate
instructions to a machine, particularly a computer. Programming languages can be used to
create programs to control the behavior of a machine or to express algorithms.
The description of a programming language is usually split into the two components of
syntax (form) and semantics (meaning).
Some languages are defined by a specification document (for example, the C
programming language is specified by an ISO Standard), while other languages (such as
Perl) have a dominant implementation that is treated as a reference.
The different types of languages
Not any computer programming language can do anything. There are limitations, and actually,
different languages are used for different tasks
I. WEB LANGUAGES
Used for creating and editing pages on the web. Can do anything from putting plain text on a
webpage, to accessing and retrieving data from a database. Vary greatly in terms of power
and complexity.
HTML
Hyper Text Markup Language. The core language of the world wide web that is used to
define the structure and layout of web pages by using various tags and attributes
XML
Extensible Markup Language. A language developed by the W3C which works like
HTML, but unlike HTML, allows for custom tags that are defined by programmers. XML
allows for the transmission of data between applications and organizations through the
use of its custom tags.
Javascript
A language developed by Netscape used to provide dynamic and interactive content on
webpages. With Javascript it is possible to communicate with HTML, create animations,
create calculators, validate forms, and more.
VBScript
Visual Basic Scripting Edition. A language developed by Microsoft that works only in
Microsoft's Internet Explorer web browser and web browsers based on the Internet
Explorer engine such as FlashPeak's Slim Browser. VBScript Can be used to print dates,
make calculations, interact with the user, and more.
PHP
Hypertext Preprocessor. A powerful language used for many tasks such as data
encryption, database access, and form validation. PHP was originally created in 1994 By
RasmusLerdorf.
Java
A powerful and flexible language created by Sun MicroSystems that can be used to create
applets (a program that is executed from within another program) that run inside
webpages as well as software applications.
7. II. SOFTWARE LANGUAGES
Used for creating executable programs. We can create anything from simple console programs
that print some text to the screen to entire operating systems. Vary greatly in terms of power and
complexity.
C
An advanced programming language used for software application development.
Originally developed by Dennis Ritchie at Bell Labs in the 1970's and designed to be a
systems programming language but since then has proven itself to be able to be used for
various software applications such as business programs, engineering programs, and even
games. The UNIX operating system is written in C.
C++
Descendant of the C language. The difference between the two languages is that C++ is
object-oriented. C++ was developed by BjarneStroustrup at Bell Labs and is a very
popular language for graphical applications.
Visual Basic
A language developed by Microsoft based on the BASIC language . Visual Basic is used
for creating Windows applications. The VBScript language (also developed by
Microsoft) is based on Visual Basic.
Java
A powerful and flexible language created by Sun MicroSystems that can be used to create
applets (a program that is executed from within another program) that run inside
webpages as well as software applications.
The different generations of languages
There are currently five generations of computer programming languages. In each generation, the
languages syntax has become easier to understand and more human-readable.
First generation languages (abbreviated as 1GL)
Represents the very early, primitive computer languages that consisted entirely of 1's and
0's - the actual language that the computer understands (machine language).
Second generation languages (2GL)
Represents a step up from the first generation languages. Allow for the use of symbolic
names instead of just numbers. Second generation languages are known as assembly
languages. Code written in an assembly language is converted into machine language
(1GL).
Third generation languages (3GL)
With the languages introduced by the third generation of computer programming, words
and commands (instead of just symbols and numbers) were being used. These languages
therefore, had syntax that was much easier to understand. Third generation languages are
known as "high level languages" and include C, C++, Java, and JavaScript, among others.
Fourth generation languages (4GL)
The syntax used in 4GL is very close to human language, an improvement from the
previous generation of languages. 4GL languages are typically used to access databases
and include SQL and ColdFusion, among others.
8. Fifth generation languages (5GL)
Fifth generation languages are currently being used for neural networks. A nueral
network is a form of artificial intelligence that attempts to imitate how the human mind
works.
MACHINE LANGUAGE
Machine code or machine language is a set of instructions executed directly by a computer's
central processing unit (CPU). Each instruction performs a very specific task, such as a load, a
jump, or an ALU operation on a unit of data in a CPU register or memory. Every program
directly executed by a CPU is made up of a series of such instructions.
Numerical machine code (i.e., not assembly code) may be regarded as the lowest-level
representation of a compiled or assembled computer program or as a primitive and hardware-
dependent programming language. While it is possible to write programs directly in numerical
machine code, it is tedious and error prone to manage individual bits and calculate numerical
addresses and constants manually. It is thus rarely done today, except for situations that require
extreme optimization or debugging.
Higher-level languages or assembly language are translated to executable machine code by
utilities such as compilers, assemblers and linkers.
Machine code instructions
Every processor or processor family has its own machine code instruction set. Instructions are
patterns of bits that by physical design correspond to different commands to the machine. Thus,
the instruction set is specific to a class of processors using (much) the same architecture.
Successor or derivative processor designs often include all the instructions of a predecessor and
may add additional instructions
Programs
A computer program is a sequence of instructions that are executed by a CPU. While simple
processors execute instructions one after another, superscalar processors are capable of executing
several instructions at once.
9. Assembly language:
Sometimes referred to as assembly or ASL, assembly language is a low-level
programming language used to interface with computer hardware. Assembly language uses
structured commands as substitutions for numbers allowing humans to more easily read the code
versus looking at binary. Although easier to read than binary, assembly language is a difficult
language and is usually substituted for a higher language such as C.
Each personal computer has a microprocessor that manages the computer's arithmetical, logical
and control activities.
Each family of processors has its own set of instructions for handling various operations like
getting input from keyboard, displaying information on screen and performing various other
jobs. These set of instructions are called 'machine language instructions'.
Processor understands only machine language instructions, which are strings of 1's and 0's.
However, machine language is too obscure and complex for using in software development. So,
the low-level assembly language is designed for a specific family of processors that represents
various instructions in symbolic code and a more understandable form.
Below is an example of assembly language in a debug routine.
Ex :mov ax,4C00h
Procedural language :
Procedural programming can be defined as a subtype of imperative programming as a
programming paradigm based upon the concept of procedure calls, in which statements are
structured into procedures (also known as subroutines or functions). Procedure calls are modular
and are bound by scope. A procedural program is composed of one or more modules. Each
module is composed of one or more subprograms. Modules may consist of procedures, functions,
subroutines or methods, depending on the programming language. Procedural programs may
possibly have multiple levels or scopes, with subprograms defined inside other subprograms.
Each scope can contain names which cannot be seen in outer scopes.
Procedural programming offers many benefits over simple sequential programming since
procedural code:
is easier to read and more maintainable
is more flexible
facilitates the practice of good program design
allows modules to be used again in the form of code libraries.
10. Natural language :
Natural Language Programming (NLP) is an ontology-assisted way of programming in terms
of natural language sentences, e.g. English. A structured document with Content, sections and
subsections for explanations of sentences forms a NLP document, which is actually a computer
program. Natural languages and natural language user interfacesinclude Inform7, a natural
programming language for making interactive fiction; Shakespeare, a joke natural programming
language in the style of the plays of William Shakespeare, and Wolfram Alpha, a computational
knowledge engine, using natural language input.
Ex:
For example:
For example:
The old lady is a woman in the Stage. Understand "mother" or
"stepmother" as the old lady.
creates an object that happens to be a female person, names that object "old lady", and places that
object within the room object called the "Stage". Then two aliases ("mother" and "stepmother"
are created that also both reference the "old lady" object.
Of course, as the examples get increasingly complex, the necessary hoops to jump through also
become more complex. English is, by its very nature, ambiguous, while computer code is most
definitively not.
Visual programming language :
Visual programming language (VPL) is a programming language that uses graphical elements
and figures to develop a program.
VPL employs techniques to design a software program in two or more dimensions, and includes
graphical elements, text, symbols and icons within its programming context.
Visual programming language is also known as executable graphics language.
Visual programming language enables the development of software programs by eliminating
textual software code with a series of visual graphics elements. VPL incorporates these graphical
elements as the primary context of the language arranged in a systematic order. The graphics or
icons included within a visual program serve as input, activities, connections and/or output of the
program.
Visual language has a few types, such as icon-based languages, diagramming languages and
form-based language. Visual languages should not be confused with GUI-based programming
language as they only provide graphical program authoring services. However, their
code/context is completely textual.
11. Kodu, Blockly and executable UML are popular examples of visual programming languages.
Graphical programming language:
The graphical approach to programming allows a computer to process spatial representations in
two or more dimensions. In contrast to text-based programming, which uses lines of code,
graphical programming replaces text with pictures or symbols of physical things.
Graphical programming provides an approach that's more intuitive and less cumbersome for
some programmers. It also can be a more effective way to introduce computer programming to
visual learners. For example, researchers at the Lifelong Kindergarten Group have created a
program called Scratch, which uses graphical programming to help children learn math and
engage in creative thinking.
Graphical programming is often called visual programming or Visual Programming Language
(VPL). It's different from Microsoft's Visual Basic, which defines pictures by using text-based
language.
How Graphical Programming Is Used
Graphical programming is most frequently used in the stages of engineering systems design.
Engineers and programmers might use graphical programs to translate information about
physical events, such as vibrations that occur during the testing of automotive engines, into
visual readouts.
Graphical programming tools also might be used to employ block diagrams, connectors and
virtual instruments, such as temperature gauges. The result is a user interface that can be used to
control and monitor an automated process.
Graphical programs also are used to analyze mathematical functions, such as those used in signal
processing. Additionally, users can access databases of information on terrain, demographics and
buildings. Such programs might be used in cellular system design.
12. Scripting languages:
Scripting languages, which can be embedded within HTML, commonly are used to add
functionality to a Web page, such as different menu styles or graphic displays or to serve
dynamic advertisements. These types of languages are client-side scripting languages, affecting
the data that the end user sees in a browser window. Other scripting languages are server-side
scripting languages that manipulate the data, usually in a database, on the server.
Scripting languages came about largely because of the development of the Internet as a
communications tool. JavaScript, ASP, JSP, PHP, Perl, Tcl and Python are examples of scripting
languages.
Definition of HTML
HTML (Hypertext Markup Language) is the set of markup symbols or codes inserted in a
file intended for display on a World Wide Web browser page. The markup tells the Web browser
how to display a Web page's words and images for the user. Each individual markup code is
referred to as an element (but many people also refer to it as a tag). Some elements come in pairs
that indicate when some display effect is to begin and when it is to end.
Example1:
<html>
<head>
<title>Title of the document</title>
</head>
<body>
The content of the document......
</body>
</html>
Example2:
<html>
<body>
<h1>My First Heading</h1>
<p>My first paragraph.</p>
</body>
</html>
Syntax :
Heading
<h1>This is a heading</h1>
<h2>This is a heading</h2>
<h3>This is a heading</h3>
Paragraphs
<p>This is a paragraph.</p>
<p>This is another paragraph.</p>
13. Links
<a href="http://www.kristujayanti.edu.org">This is a link</a>
Images
<imgsrc="w3schools.jpg" alt="W3Schools.com" width="104" height="142">
Attributes
<htmllang="en-US">
<body>
<h1>My First Heading</h1>
<p>My first paragraph.</p>
</body>
</html>
Definition of XML
Extensible Markup Language (XML) is used to describe data. The XML standard is a
flexible way to create information formats and electronically share structured data via the public
Internet, as well as via corporate networks.
Difference between HTML and XML
1. HTML was designed to display data with focus on how data looks while XML was
designed to be a software and hardware independent tool used to transport and store data, with
focus on what data is.
2. HTML is a markup language itself while XML provides a framework for defining markup
languages.
3. HTML is a presentation language while XML is neither a programming language nor a
presentation language.
4. HTML is case insensitive while XML is case sensitive.
5. HTML is used for designing a web-page to be rendered on the client side while XML is used
basically to transport data between the application and the database.
6. HTML has itsown predefined tags while what makes XML flexible is that custom tags can
be defined and the tags are invented by the author of the XML document.
7. HTML is not strict if the user does not use the closing tags but XML makes it mandatory for
the user the close each tag that has been used.
8. HTML does not preserve white space while XML does.
9. HTML is about displaying data, hence static but XML is about carrying information, hence
dynamic.
Program Translation
14. A translator is a computer program that performs the translation of a program written in a
given programming language into a functionally equivalent program in a different computer
language, without losing the functional or logical structure of the original code (the "essence" of
each program).[1] These include translations between high-level and human-readable computer
languages such as C++, Java and COBOL, intermediate-level languages such as Java bytecode,
low-level languages such as the assembly language and machine code.
Program translation hierarchy
Translation Hierarchy
• Compiler
Translates high level language program into assembly language.
•Assembler
Converts assembly language programs into Object files
Object files contain a combination of machine instructions, data, and information needed
to place instructions properly in memory
Assemblers
• Assemblers need to
– translate assembly instructions and pseudo-instructions into machine instructions
– Convert decimal numbers, etc. specified by programmer into binary.
• Typically, assemblers make two passes over the assembly file
– First pass: reads each line and records labels in a symbol table
15. – Second pass: use info in symbol table to produce actual
Machine code for each line.
Object file format
Linker
• Tool that merges the object files produced by separate compilation or assembly and creates an
executable file
• Three tasks
– Searches the program to find library routines used by program, e.g. printf(), math routines,…
– Determines the memory locations that code from each module will occupy and relocates its
instructions by adjusting absolute references
– Resolves references among files.
Loader
• Part of the OS that brings an executable file residing on disk into memory and starts it running
• Steps
– Read executable file’s header to determine the size of text and data segments
– Create a new address space for the program
– Copies instructions and data into address space
– Copies arguments passed to the program on the stack
– Initializes the machine registers including the stack ptr
– Jumps to a startup routine that copies the program’s arguments from the stack to registers and
calls the program’s main routine.
What is Complier?
16. A compiler is a computer program (or set of programs) that transforms source code
written in a programming language (the source language) into another computer language (the
target language, often having a binary form known as object code).
What is interpreter?
In computer science, an interpreter is a computer program that directly executes, i.e.
performs, instructions written in a programming or scripting language, without previously
compiling them into a machine language program.
Difference between Complier and Interpreter
No Compiler Interpreter
1 Compiler Takes Entire program as input Interpreter Takes Single instruction as input.
2 Intermediate Object Code is Generated No Intermediate Object Code is Generated
3
Conditional Control Statements are
Executes faster
Conditional Control Statements are Executes
slower
4
Memory Requirement : More (Since
Object Code is Generated)
Memory Requirement is Less
5 Program need not be compiled every time
Every time higher level program is converted
into lower level program
6
Errors are displayed after entire program
is checked
Errors are displayed for every instruction
interpreted (if any)
7 Example : C Compiler Example : BASIC
What is Linker?
In computer science, a linker or link editor is a computer program that takes one or more
object files generated by a compiler and combines them into a single executable file, library file,
or another object file.
Linker is a program that takes one or more objects generated by a compiler and combines
them into a single executable program.
What is Loader?
In computing, a loader is the part of an operating system that is responsible for loading
programs and libraries. It is one of the essential stages in the process of starting a program, as it
places programs into memory and prepares them for execution.
Loader is the part of an operating system that is responsible for loading programs from
executable (i.e., executable files) into memory, preparing them for execution and then executing
them.
17. Characteristics of a Programming Language
Readability: A good high-level language will allow programs to be written in some ways
that resemble a quite-English description of the underlying algorithms. If care is taken,
the coding may be done in a way that is essentially self-documenting.
Portability: High-level languages, being essentially machine independent, should be able
to develop portable software.
Generality: Most high-level languages allow the writing of a wide variety of programs,
thus relieving the programmer of the need to become expert in many diverse languages.
Brevity: Language should have the ability to implement the algorithm with less amount
of code. Programs expressed in high-level languages are often considerably shorter than
their low-level equivalents.
Error checking: Being human, a programmer is likely to make many mistakes in the
development of a computer program. Many high-level languages enforce a great deal of
error checking both at compile-time and at run-time.
Cost: The ultimate cost of a programming language is a function of many of its
characteristics.
Familiar notation: A language should have familiar notation, so it can be understood by
most of the programmers.
Quick translation: It should admit quick translation.
Efficiency: It should permit the generation of efficient object code.
Modularity: It is desirable that programs can be developed in the language as a
collection of separately compiled modules, with appropriate mechanisms for ensuring
self-consistency between these modules.
Widely available: Language should be widely available and it should be possible to
provide translators for all the major machines and for all the major operating systems.