Concepts of Programming Languages

(Sean Pound) #1
Index 783

in selection statements,
153–154
in sequences, 152–153
weakest preconditions and,
149–150
Inferencing process, 740–743
Infix operators, 319
Information hiding
in Ada, 482–483
in C#, 498–499
in C++, 486
in Objective-C, 492–493
in Ruby, 499
Inheritance
in Ada, 559–560
in C#, 557
in C++, 539–544
introduction to, 525–527
in Java, 553–555
in Objective-C, 549–551
in Ruby, 565
in Smalltalk, 534–535
Inherited attributes, 134
Initial values, 363
Initialization, 234, 533–534
Inner classes, 555–556
Inout mode parameter passing,
400
Instance data storage, 566
Instance methods, 527
Instance variables, 527
Instantiation, 733, 737
int
abstract data types,
497–498
in C, 326
in C++, 295
in Java, 609–611
in ML, 702–704
in nonblocking synchronized
access, 612
in type checking, 302–303
in type conversions, 329–332
unary minus operator and, 320


integer
data types, 246–247
ordinal types, 255
reserved words, 206–207
Interface abstract class, 553–555
Interlocked classes, 616
International Algorithmic
Language (IAL), 54
International Federation of Infor-
mation Processing (IFIP), 75
International Standards
Organization (ISO), 97, 249
Interpreter, 678–681
intrinsic attributes, 134–135
Intrinsic condition queues, 608
Intrinsic limitations, 756
iPhones, 90
IPL (Information Processing
Language), 47–49
is operators, 266
ISO (International Standards
Organization), 97, 249
Iterative statements
counter-controlled loops and,
363, 367–368
data structures for, 371–375
design issues for, 363
introduction to, 362–363
logically controlled loops and,
368–370
for statements, 364–367
user-located loop controls as,
370–371
Iverson, Kenneth P., 71

J
Jacopini, Giuseppe, 350, 379
Jagged arrays, 267–268
JARs (Java Archives), 513
Java
abstract data types in,
496–497, 506–509
assertions in, 653–654
classes of exceptions in, 647

concurrency in, 21
design process for, 91–92
dynamic binding in, 555
evaluation of, 93–94
event handling in, 656–660
exception handling in, 16,
647–655
expressivity in, 15
feature multiplicity in, 9
finally clause in, 652–653
imperative-based
object-orientation of, 91
inheritance in, 553–555
introduction to, 12
JIT systems in, 30
nested classes in, 555–556
object-oriented programming
in, 552–556
overview of, 91–94
packages in, 515–516
parameterized abstract data
types in, 506–509
popularity of, 3
Swing GUI components in,
656–657
threads in. see Threads
Java Archives (JARs), 513
Java Server Pages Standard Tag
Library (JSTL), 22, 105–106
JavaScript
anonymous functions in,
715–716
arrays in, 264
dynamic type binding in,
213–214
event handling in, 656
evolution of, 97–98
execution speed in, 718
implicit heap-dynamic
variables in, 218
lambda expressions in, 716
Lua vs., 101
nested functions in, 220–221
nested subprograms in, 454
Free download pdf