Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Download
Standard view
Full view
of .
Look up keyword or section
Like this
6Activity

Table Of Contents

Introduction to Programming Languages
1 What Are Programming Languages?
1.1 The wrong question
1.2. IMPERATIVE LANGUAGES 4
1.2 Imperative languages
1.3. DATA-ORIENTED LANGUAGES 7
1.3 Data-oriented languages
1.4. OBJECT-ORIENTED LANGUAGES 11
1.4 Object-oriented languages
1.5. NON-IMPERATIVE LANGUAGES 12
1.5 Non-imperative languages
1.6 Standardization
1.7 Computer architecture
1.8 * Computability
1.9 Exercises
2 Elements of Programming Languages
2.1 Syntax
2.7 Subprograms
2.8 Modules
2.9 Exercises
3 Programming Environments
3.1 Editor
3.2 Compiler
3.3 Librarian
3.4 Linker
3.5 Loader
3.6 Debugger
3.7 Profiler
3.8 Testing tools
3.9 Configuration tools
3.10 Interpreters
3.11 The Java model
3.12 Exercises
4 Elementary Data Types
4.1 Integer types
4.2 Enumeration types
4.3 Character type
4.4 Boolean type
4.5 * Subtypes
4.6 * Derived types
4.7 Expressions
4.8 Assignment statements
4.9 Exercises
5 Composite Data Types
5.1 Records
5.2 Arrays
5.3 Reference semantics in Java
5.4. ARRAYS AND TYPE CHECKING 66
5.4 Arrays and type checking
5.7 Multi-dimensional arrays
5.8 Array implementation
5.9 * Representation specification
6.1 switch-/case-statements
6.2 if-statements
6.3 Loop statements
6.4 for-statements
6.5 Sentinels
6.6 * Invariants
6.7 goto-statements
6.8 Exercises
7 Subprograms
7.1 Subprograms: procedures and functions
7.2 Parameters
7.3 Passing parameters to a subprogram
7.4 Block structure
7.5 Recursion
7.6 Stack architecture
7.7. MORE ON STACK ARCHITECTURE 130
7.7 More on stack architecture
7.8 * Implementation on the 8086
7.9 Exercises
8 Pointers
8.1 Pointer types
8.2 Data structures
8.3. DYNAMIC DATA STRUCTURES IN JAVA 149
8.3 Dynamic data structures in Java
8.4 Equality and assignment in Java
8.5 Memory allocation
8.6. ALGORITHMS FOR HEAP ALLOCATION 153
8.6 Algorithms for heap allocation
8.7 Exercises
9 Real Numbers
9.1 Representations of real numbers
9.2. LANGUAGE SUPPORT FOR REAL NUMBERS 160
9.2 Language support for real numbers
9.3 The three deadly sins
9.4 * Real types in Ada
9.5 Exercises
10 Polymorphism
10.1 Type conversion
10.2 Overloading
10.3 Generics
10.4. POLYMORPHIC DATA STRUCTURES IN JAVA 174
10.4 Polymorphic data structures in Java
10.5 Variant records
10.6 Dynamic dispatching
10.7 Exercises
11 Exceptions
11.1 Exception handling requirements
11.2 Exceptions in PL/I
11.3 Exceptions in Ada
11.4 Exceptions in C++
11.5. ERROR HANDLING IN EIFFEL 186
11.5 Error handling in Eiffel
11.6 Exercises
12 Concurrency
12.1 What is concurrency?
12.2 Shared memory
12.3. THE MUTUAL EXCLUSION PROBLEM 193
12.3 The mutual exclusion problem
12.4 Monitors and protected objects
12.5 Concurrency in Java
12.6 Message passing
12.7 occam
12.8 Ada rendezvous
12.9 Linda
12.10 Exercises
13 Program Decomposition
13.1 Separate compilation
13.2 Why are modules needed?
13.3 Packages in Ada
13.4. ABSTRACT DATA TYPES IN ADA 215
13.4 Abstract data types in Ada
13.5. HOW TO WRITE MODULES IN C++ 220
13.5 How to write modules in C++
13.6 Exercises
14 Object-Oriented Programming
14.1 Object-oriented design
14.2. OBJECT-ORIENTED PROGRAMMING IN C++ 227
14.2 Object-oriented programming in C++
14.3 Inheritance
14.4. DYNAMIC POLYMORPHISM IN C++ 231
14.4 Dynamic polymorphism in C++
14.5. OBJECT-ORIENTED PROGRAMMING IN ADA 95 237
14.5 Object-oriented programming in Ada 95
14.6 Exercises
15 More on Object-Oriented Programming
1. Structuring classes:
15.1 Structuring classes
15.2 Encapsulation in Java
15.3. ACCESS TO PRIVATE COMPONENTS 253
15.3 Access to private components
15.4 Class data
15.5. THE EIFFEL PROGRAMMING LANGUAGE 261
15.5 The Eiffel programming language
15.6 Design considerations
15.7 Methods of dynamic polymorphism
15.8 Exercises
Non-imperative Programming Languages
16 Functional Programming
16.1 Why functional programming?
16.2 Functions
16.3 Compound types
16.4 Higher-order functions
0 of .
Results for:
No results containing your search query
P. 1
Understanding Progrramming Languages Ben Ari

Understanding Progrramming Languages Ben Ari

Ratings: (0)|Views: 121 |Likes:
Published by Anant Vikram Mishra

More info:

Published by: Anant Vikram Mishra on Aug 25, 2010
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

01/02/2013

pdf

text

original

You're Reading a Free Preview
Pages 7 to 31 are not shown in this preview.
You're Reading a Free Preview
Pages 38 to 79 are not shown in this preview.
You're Reading a Free Preview
Pages 86 to 91 are not shown in this preview.
You're Reading a Free Preview
Pages 98 to 267 are not shown in this preview.
You're Reading a Free Preview
Pages 274 to 322 are not shown in this preview.

Activity (6)

You've already reviewed this. Edit your review.
1 hundred reads
Lars Wirfelt liked this
jmassillon liked this
st27383 liked this
adamnevski liked this
corina_mandis liked this

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->