Foundations of Object-oriented Languages

Foundations of Object-oriented Languages
Author: Kim B. Bruce
Publisher: MIT Press
Total Pages: 416
Release: 2002
Genre: Computers
ISBN: 9780262025232

A presentation of the formal underpinnings of object-oriented programming languages.

Theoretical Aspects of Object-oriented Programming

Theoretical Aspects of Object-oriented Programming
Author: Carl A. Gunter
Publisher: MIT Press
Total Pages: 568
Release: 1994
Genre: Computers
ISBN: 9780262071550

Although the theory of object-oriented programming languages is far from complete, this book brings together the most important contributions to its development to date, focusing in particular on how advances in type systems and semantic models can contribute to new language designs.The fifteen chapters are divided into five parts: Objects and Subtypes, Type Inference, Coherence, Record Calculi, and Inheritance. The chapters are organized approximately in order of increasing complexity of the programming language constructs they consider - beginning with variations on Pascal- and Algol-like languages, developing the theory of illustrative record object models, and concluding with research directions for building a more comprehensive theory of object-oriented programming languages.Part I discusses the similarities and differences between "objects" and algebraic-style abstract data types, and the fundamental concept of a subtype. Parts II-IV are concerned with the "record model" of object-oriented languages. Specifically, these chapters discuss static and dynamic semantics of languages with simple object models that include a type or class hierarchy but do not explicitly provide what is often called dynamic binding. Part V considers extensions and modifications to record object models, moving closer to the full complexity of practical object-oriented languages.Carl A. Gunter is Professor in the Department of Computer and Information Science at the University of Pennsylvania. John C. Mitchell is Professor in the Department of Computer Science at Stanford University.

Foundations of Object-Oriented Programming Using .NET 2.0 Patterns

Foundations of Object-Oriented Programming Using .NET 2.0 Patterns
Author: Christian Gross
Publisher:
Total Pages: 384
Release: 2006
Genre: Computers
ISBN:

* Includes coverage on .NET Generics, .NET 2.0. and coverage of both Open Source and Closed Source libraries and applications. *Based on C# code examples that work on multiple platforms (e.g. Linux, Windows, etc). * Focuses on solving problems in short and easy to digest segments.

Object-Oriented Programming A Unified Foundation

Object-Oriented Programming A Unified Foundation
Author: Giuseppe Castagna
Publisher: Springer Science & Business Media
Total Pages: 372
Release: 2012-12-06
Genre: Computers
ISBN: 1461241383

by Luea Cardelli Ever since Strachey's work in the 1960's, polymorphism has been classified into the parametric and overloading varieties. Parametric polymorphism has been the subject of extensive study for over two decades. Overloading, on the other hand, has often been considered too ad hoc to deserve much attention even though it has been, in some form, an ingredient of virtually every programming lan guage (much more so than parametric polymorphism). With the introduction of object-oriented languages, and in particular with multiple-dispatch object-oriented languages, overloading has become less of a programming convenience and more of a fundamental feature in need of proper explanation. This book provides a compelling framework for the study of run-time over loading and of its interactions with subtyping and with parametric polymorphism. The book also describes applications to object-oriented programming. This new framework is motivated by the relatively recent spread of programming languages that are entirely based on run-time overloading; this fact probably explains why this subject was not investigated earlier. Once properly understood, overloading reveals itself relevant also to the study of older and more conventional (single dispatch) object-oriented languages, clarifying delicate issues of covariance and contravariance of method types, and of run-time type analysis. In the final chapters, a synthesis is made between parametric and overloading polymorphism.

Advanced R

Advanced R
Author: Hadley Wickham
Publisher: CRC Press
Total Pages: 669
Release: 2015-09-15
Genre: Mathematics
ISBN: 1498759807

An Essential Reference for Intermediate and Advanced R Programmers Advanced R presents useful tools and techniques for attacking many types of R programming problems, helping you avoid mistakes and dead ends. With more than ten years of experience programming in R, the author illustrates the elegance, beauty, and flexibility at the heart of R. The book develops the necessary skills to produce quality code that can be used in a variety of circumstances. You will learn: The fundamentals of R, including standard data types and functions Functional programming as a useful framework for solving wide classes of problems The positives and negatives of metaprogramming How to write fast, memory-efficient code This book not only helps current R users become R programmers but also shows existing programmers what’s special about R. Intermediate R programmers can dive deeper into R and learn new strategies for solving diverse problems while programmers from other languages can learn the details of R and understand why R works the way it does.

Foundations for Programming Languages

Foundations for Programming Languages
Author: John C. Mitchell
Publisher: Mit Press
Total Pages: 846
Release: 1996
Genre: Computers
ISBN: 9780262133210

"Programming languages embody the pragmatics of designing software systems, and also the mathematical concepts which underlie them. Anyone who wants to know how, for example, object-oriented programming rests upon a firm foundation in logic should read this book. It guides one surefootedly through the rich variety of basic programming concepts developed over the past forty years." -- Robin Milner, Professor of Computer Science, The Computer Laboratory, Cambridge University "Programming languages need not be designed in an intellectual vacuum; John Mitchell's book provides an extensive analysis of the fundamental notions underlying programming constructs. A basic grasp of this material is essential for the understanding, comparative analysis, and design of programming languages." -- Luca Cardelli, Digital Equipment Corporation Written for advanced undergraduate and beginning graduate students, "Foundations for Programming Languages" uses a series of typed lambda calculi to study the axiomatic, operational, and denotational semantics of sequential programming languages. Later chapters are devoted to progressively more sophisticated type systems.

Foundations of Programming Languages

Foundations of Programming Languages
Author: Kent D. Lee
Publisher: Springer
Total Pages: 365
Release: 2015-01-19
Genre: Computers
ISBN: 3319133144

This clearly written textbook introduces the reader to the three styles of programming, examining object-oriented/imperative, functional, and logic programming. The focus of the text moves from highly prescriptive languages to very descriptive languages, demonstrating the many and varied ways in which we can think about programming. Designed for interactive learning both inside and outside of the classroom, each programming paradigm is highlighted through the implementation of a non-trivial programming language, demonstrating when each language may be appropriate for a given problem. Features: includes review questions and solved practice exercises, with supplementary code and support files available from an associated website; provides the foundations for understanding how the syntax of a language is formally defined by a grammar; examines assembly language programming using CoCo; introduces C++, Standard ML, and Prolog; describes the development of a type inference system for the language Small.

A Theory of Objects

A Theory of Objects
Author: Martin Abadi
Publisher: Springer Science & Business Media
Total Pages: 392
Release: 2012-09-08
Genre: Computers
ISBN: 1441985980

By developing object calculi in which objects are treated as primitives, the authors are able to explain both the semantics of objects and their typing rules, and also demonstrate how to develop all of the most important concepts of object-oriented programming languages: self, dynamic dispatch, classes, inheritance, protected and private methods, prototyping, subtyping, covariance and contravariance, and method specialization. An innovative and important approach to the subject for researchers and graduates.