Understanding Programming Languages

Understanding Programming Languages

Covers comparative analysis of language constructs and their implementation techniques. Compares Ada 95 and C++ in detail, including the constructs for object-oriented programming. Also includes functional and logic programming languages (ML and Prolog).

Publication date: 12 Mar 1996

ISBN-10: 0471958468

ISBN-13: 9780471958468

Paperback: 376 pages

Views: 18,881

Type: N/A

Publisher: John Wiley & Sons

License: Creative Commons Attribution-ShareAlike 4.0 International

Post time: 08 Dec 2007 06:31:22

Understanding Programming Languages

Understanding Programming Languages Covers comparative analysis of language constructs and their implementation techniques. Compares Ada 95 and C++ in detail, including the constructs for object-oriented programming. Also includes functional and logic programming languages (ML and Prolog).
Tag(s): Compiler Design and Construction
Publication date: 12 Mar 1996
ISBN-10: 0471958468
ISBN-13: 9780471958468
Paperback: 376 pages
Views: 18,881
Document Type: N/A
Publisher: John Wiley & Sons
License: Creative Commons Attribution-ShareAlike 4.0 International
Post time: 08 Dec 2007 06:31:22
Summary/Excerpts of (and not a substitute for) the Creative Commons Attribution-ShareAlike 4.0 International:
You are free to:

Share — copy and redistribute the material in any medium or format
Adapt — remix, transform, and build upon the material for any purpose, even commercially.

The licensor cannot revoke these freedoms as long as you follow the license terms.

Click here to read the full license.
Terms and Conditions:
M. Ben-Ari wrote:You may download, display and print one copy for your personal use in non-commercial academic research and teaching. Instructors in non-commerical academic institutions may make one copy for each student in his/her class. All other rights reserved. In particular, posting this document on web sites is prohibited without the express permission of the author.

Excerpts from the Preface:

The role of language in programming has been downgraded in favor of software methodology and tools; not just downgraded, but totally repudiated when it is claimed that a well-designed system can be implemented equally well in any language. But programming languages are not just a tool; they furnish the raw material of software, the thing we look at on our screens most of the day. I believe that the programming language is one of the most important, not one of the least important, factors that influence the ultimate quality of a software system. Unfortunately, too many programmers have poor linguistic skills. He/she is passionately in love with his/her "native” programming language, but is not able to analyze and compare language constructs, nor to understand the advantages and disadvantages of modern languages and language concepts. Too often, one hears statements that demonstrate conceptual confusion: "Language L1 is more powerful (or more efficient) than language L2”.

The Aim of The Book:

The aim of this book is to help the student understand programming languages by analyzing and contrasting language constructs:

- What alternatives are available to the language designer?
- How are language constructs implemented?
- How should they be used?

We have not hesitated to be prescriptive: to claim that accumulated experience shows that certain constructs are to be preferred, and others to be avoided or at least used with caution. Of course, any book on programming languages should not be taken as a reference manual for any particular language. The goal is to learn to analyze languages and not to study the peculiarities of any language in depth. Nor is the book a guide to the choice of a language for any particular project. The goal is to supply the student with the conceptual tools needed to make such a decision.

Prerequisites:

The prerequisite for this book is at least one year of programming in some language such as Pascal or C. In any case, the student should have a basic reading knowledge of C. A familiarity with the structure and machine code of some computer will also be helpful.
 




About The Author(s)


Prof. Mordechai (Moti) Ben-Ari has been on the faculty of the Department of Science Teaching at the Weizmann Institute of Science since 1995. He heads the group on computer science education, which specializes in the learning and teaching of CS at the middle- and secondary-school levels. He has published textbooks and developed software tools for learning advanced CS concepts: concurrent programming, mathematical logic, and verification.

Mordechai Ben-Ari

Prof. Mordechai (Moti) Ben-Ari has been on the faculty of the Department of Science Teaching at the Weizmann Institute of Science since 1995. He heads the group on computer science education, which specializes in the learning and teaching of CS at the middle- and secondary-school levels. He has published textbooks and developed software tools for learning advanced CS concepts: concurrent programming, mathematical logic, and verification.


Book Categories
Sponsors
Icons8, a free icon pack