Imagen de cubierta local
Imagen de cubierta local

Programming languages : concepts and constructs / Ravi Sethi.

Por: Idioma: Inglés Detalles de publicación: Massachusetts : Addison-Wesley, 1996.Edición: 2ndDescripción: 640 pTipo de contenido:
  • texto
Tipo de medio:
  • sin mediación
Tipo de soporte:
  • volumen
ISBN:
  • 0201590654
Tema(s):
Contenidos:
Valoración
    Valoración media: 0.0 (0 votos)
Existencias
Tipo de ítem Biblioteca actual Signatura topográfica Estado Fecha de vencimiento Código de barras Reserva de ítems
Libro Libro Facultad Regional Santa Fe - Biblioteca "Rector Comodoro Ing. Jorge Omar Conca" 004.42 SE75 (Navegar estantería(Abre debajo)) Sólo Consulta 6533
Total de reservas: 0

CONTENIDO
Part I. Introduction 1
Chapter 1. The Role of Programming Languages 3
Toward Higher-Level Languages 4
Problems of Scale 8
Programming Paradigms 11
Language Implementation: Bridging the Gap 18
Exercises 21
Bibliographic notes 23
Chapter 2. Language Description: Syntactic Structure 25
Expression Notations 28
Abstract Syntax Trees 31
Lexical Syntax 33
Context-Free Grammars 35
Grammars for Expressions 41
Variants of Grammars 46
Exercises 49
Bibliographic notes 52
Part II. Imperative programming 55
Chapter 3. Statements: Structured Programming 59
The Need for Structured Programming 59
Syntax-Directed Control Flow 63
Design Considerations: Syntax 72
Handling Special Cases in Loops 77
Programming with Invariants 80
Proof Rules for Partial Correctness 86
Control flow in C 90
Exercises 94
Bibliographic notes 99
Chapter 4. Types: Data Representation 101
The Role of Types 102
Basic Types 107
Arrays: Sequences of Elements 111
Records: Named Fields 117
Unions and Variant Records 120
Sets 123
Pointers: Efficiency and Dynamic Allocation 125
Two String Tables 133
Types and Error Checking 136
Exercises 143
bibliographic notes 146
Chapter 5. Procedure Activations 147
Introduction to Procedures 148
Parameter-Passing Methods 155
Scope Rules for Names 160
Nested Scopes in the Source Text 166
Activation Records 172
Lexical Scope: Procedures as in C 181
Lexical Scope: Nested Procedures and Pascal 190
Exercises 198
Bibliographic notes 202
Part III. Object-oriented programming 205
Chapter 6. Groupings of Data and Operations 209
Constructs for Program Structuring 210
Information Hiding 217
Program Design with Modules 220
Modules and Defined Types 229
Class Declarations in C++ 232
Dynamic Allocation in C++ 238
Templates: Parameterized Types 244
Implementation of Objects in C++ 245
Exercises 248
Bibliographic notes 251
Chapter 7. Object-Oriented Programming 253
What is an Object? 253
Object-Oriented Thinking 256
Inheritance 260
Object-Oriented Programming in C++ 267
An Extended C++ Example 274
Derived Classes and Information Hiding 281
Objects in Smalltalk 285
Smalltalk Objects have a Self 291
Exercises 294
Bibliographic notes 299
Part IV. Functional programming 301
Chapter 8. Elements of Functional Programming 305
A Little Language of Expressions 306
Types: Values and Operations 313
Function Declarations 318
Approaches to Expression Evaluation 321
Lexical Scope 327
Type Checking 331
Exercises 335
Bibliographic notes 339
Chapter 9. Functional Programming in a Typed Language 341
Exploring a List 342
Function Declaration by Cases 346
Functions as First-Class Values 351
ML: Implicit Types 357
Data Types 360
Exception Handling in ML 367
Little Quilt in Standard ML 369
Exercises 380
Bibliographic notes 383
Chapter 10. Functional Programming with Lists 385
Scheme, a Dialect of Lisp 386
The Structure of Lists 392
List Manipulation 396
A Motivating Example: Differentiation 404
Simplification of Expressions 409
Storage Allocation for Lists 413
Exercises 417
Bibliographic notes 421
Part V. Other paradigms 423
Chapter 11. Logic Programming 425
Computing with Relations 426
Introduction to Prolog 430
Data Structures in Prolog 438
Programming Techniques 442
Control in Prolog 450
Cuts 461
Exercises 470
Bibliographic notes 472
Chapter 12. An Introduction to Concurrent Programming 475
Parallelism in Hardware 476
Streams: Implicit Synchronization 478
Concurrency as Interleaving 482
Liveness Properties 485
Safe Access to Shared Data 489
Concurrency in Ada 491
Synchronized Access to Shared Variables 498
Exercises 507
Bibliographic notes 510
Part Vl. Language description 513
Chapter 13. Semantic Methods 515
Synthesized Attributes 517
Attribute Grammars 520
Natural Semantics 523
Denotational Semantics 529
A Calculator in Scheme 530
Lexically Scoped Lambda Expressions 532
An Interpreter 535
An Extension: Recursive Functions 542
Exercises 545
Bibliographic notes 546
Chapter 14. Static Types and the Lambda Calculus 547
Equality of Pure Lambda Terms 549
Substitution Revisited 554
Computation with Pure Lambda Terms 556
Programming Constructs as Lambda-Terms 561
The Typed Lambda Calculus 566
Polymorphic Types 569
Exercises 576
Bibliographic notes 577
Chapter 15. A Look at Some Languages 579
Pascal: A Teaching Language 579
C: Systems Programming 583
C++ : A Range of Programming Styles 591
Smalltalk, the Language 594
Standard ML 598
Scheme, a Dialect of Lisp 602
Prolog 607
Bibliography 613
Credits 627
Index 629

No hay comentarios en este titulo.

para colocar un comentario.

Haga clic en una imagen para verla en el visor de imágenes

Imagen de cubierta local