Normal view MARC view ISBD view

How to design programs : an introduction to programming and computing / Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi.

By: Felleisen, Matthias [author.].
Contributor(s): Findler, Robert Bruce [author.] | Flatt, Matthew [author.] | Krishnamurthi, Shriram [author.].
Publisher: Cambridge, Massachusetts : MIT Press, ©2018Copyright date: ©2018Edition: Second edition.Description: xxvi, 765 pages : illustrations ; 24 cm.Content type: text | still image Media type: unmediated Carrier type: volumeISBN: 9780262534802.Subject(s): Computer programming | Electronic data processingGenre/Form: Print books.
Contents:
Preface -- Prologue: How to Program -- I Fixed-Size Data Intermezzo 1: Beginning Student Language -- II Arbitrarily Large Data Intermezzo 2: Quote, Unquote -- III Abstraction Intermezzo 3: Scope and Abstraction -- IV Intertwined Data Intermezzo 4: The Nature of Numbers -- V Generative Recursion Intermezzo 5: The Cost of Computation -- VI Accumulators -- Epilogue: Moving On.
Summary: This introduction to programming places computer science at the core of a liberal arts education. Unlike other introductory books, it focuses on the program design process, presenting program design guidelines that show the reader how to analyze a problem statement, how to formulate concise goals, how to make up examples, how to develop an outline of the solution, how to finish the program, and how to test it. Because learning to design programs is about the study of principles and the acquisition of transferable skills, the text does not use an off-the-shelf industrial language but presents a tailor-made teaching language. For the same reason, it offers DrRacket, a programming environment for novices that supports playful, feedback-oriented learning. The environment grows with readers as they master the material in the book until it supports a full-fledged language for the whole spectrum of programming tasks. This second edition has been completely revised. While the book continues to teach a systematic approach to program design, the second edition introduces different design recipes for interactive programs with graphical interfaces and batch programs. It also enriches its design recipes for functions with numerous new hints. Finally, the teaching languages and their IDE now come with support for images as plain values, testing, event-driven programming, and even distributed programming.
    average rating: 0.0 (0 votes)
Current location Call number Status Date due Barcode Item holds
On Shelf QA76.6 .F445 2018 (Browse shelf) Available AU00000000014667
Total holds: 0

Includes index.

Preface -- Prologue: How to Program -- I Fixed-Size Data Intermezzo 1: Beginning Student Language -- II Arbitrarily Large Data Intermezzo 2: Quote, Unquote -- III Abstraction Intermezzo 3: Scope and Abstraction -- IV Intertwined Data Intermezzo 4: The Nature of Numbers -- V Generative Recursion Intermezzo 5: The Cost of Computation -- VI Accumulators -- Epilogue: Moving On.

This introduction to programming places computer science at the core of a liberal arts education. Unlike other introductory books, it focuses on the program design process, presenting program design guidelines that show the reader how to analyze a problem statement, how to formulate concise goals, how to make up examples, how to develop an outline of the solution, how to finish the program, and how to test it. Because learning to design programs is about the study of principles and the acquisition of transferable skills, the text does not use an off-the-shelf industrial language but presents a tailor-made teaching language. For the same reason, it offers DrRacket, a programming environment for novices that supports playful, feedback-oriented learning. The environment grows with readers as they master the material in the book until it supports a full-fledged language for the whole spectrum of programming tasks. This second edition has been completely revised. While the book continues to teach a systematic approach to program design, the second edition introduces different design recipes for interactive programs with graphical interfaces and batch programs. It also enriches its design recipes for functions with numerous new hints. Finally, the teaching languages and their IDE now come with support for images as plain values, testing, event-driven programming, and even distributed programming.

Copyright © 2020 Alfaisal University Library. All Rights Reserved.
Tel: +966 11 2158948 Fax: +966 11 2157910 Email:
librarian@alfaisal.edu