๐”– Scriptorium
โœฆ   LIBER   โœฆ

๐Ÿ“

How to design Programs. An Introduction to Programming and Computing (online version) [2nd ed.]

โœ Scribed by Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi


Publisher
MIT
Year
2014
Tongue
English
Leaves
744
Category
Library

โฌ‡  Acquire This Volume

No coin nor oath required. For personal study only.

โœฆ Table of Contents


Preface......Page 1
Prologue - how to program......Page 13
Arithmetic & Arithmetic......Page 17
Inputs & Output......Page 23
Many Ways to compute......Page 28
One Program, Many Definitions......Page 33
One more Definition......Page 37
You are a Programmer now......Page 40
Not!......Page 41
Arithmetic......Page 42
Functions & Programs......Page 59
How to design Programs......Page 90
Intervals, Enumerations, Itemizations......Page 116
Adding Structure......Page 161
Itemizations & Structures......Page 200
Intermezzo - BSL......Page 232
Lists......Page 256
Self-Referential Data Definitions......Page 269
More on Lists......Page 303
Design by Composition......Page 331
Projects - Lists......Page 353
Summary......Page 382
Intermezzo - Quote, Unquote......Page 384
Similarities everywhere......Page 394
Designing Abstractions......Page 408
Using Abstractions......Page 423
Nameless Functions......Page 449
Summary......Page 471
Intermezzo - Scope & Abstraction......Page 473
Poetry of S-Expressions......Page 493
Incremental Refinement......Page 520
Refining Interpreters......Page 526
Commerce of XML......Page 539
Simultaneous Processing......Page 562
Summary......Page 590
Intermezzo - Nature of Numbers......Page 592
Non-standard Recursion......Page 603
Designing Algorithms......Page 613
Variations on the Theme......Page 626
Mathematical Examples......Page 640
Algorithms that backtrack......Page 659
Summary......Page 675
Intermezzo - Cost of Computation......Page 677
Loss of Knowledge......Page 690
Accumulator-Style Functions......Page 699
More Uses of Accumulation......Page 720
Summary......Page 739
Epilogue - how not to program......Page 741


๐Ÿ“œ SIMILAR VOLUMES


How to Design Programs: An Introduction
โœ Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi ๐Ÿ“‚ Library ๐Ÿ“… 2018 ๐Ÿ› The MIT Press ๐ŸŒ English

<div><p><strong>A completely revised edition, offering new design recipes for interactive programs and support for images as plain values, testing, event-driven programming, and even distributed programming.</strong></p><p>This introduction to programming places computer science at the core of a lib

How to Design Programs: An Introduction
โœ Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi ๐Ÿ“‚ Library ๐Ÿ“… 2001 ๐Ÿ› The MIT Press ๐ŸŒ English

<P>This introduction to programming places computer science in the core of a liberal arts education. Unlike other introductory books, it focuses on the program design process. This approach fosters a variety of skills--critical reading, analytical thinking, creative synthesis, and attention to detai

How to Design Programs: An Introduction
โœ Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi ๐Ÿ“‚ Library ๐Ÿ“… 2001 ๐Ÿ› The MIT Press ๐ŸŒ English

This introduction to programming places computer science in the core of a liberal arts education. Unlike other introductory books, it focuses on the program design process. This approach fosters a variety of skills--critical reading, analytical thinking, creative synthesis, and attention to detail--

How to Design Programs: An Introduction
โœ Felleisen, Matthias; Findler, Robert Bruce; Flatt, Matthew; Krishnamurthi, Shrir ๐Ÿ“‚ Library ๐Ÿ“… 2018 ๐Ÿ› The MIT Press ๐ŸŒ English

A completely revised edition, offering new design recipes for interactive programs and support for images as plain values, testing, event-driven programming, and even distributed programming. This introduction to programming places computer science at the core of a liberal arts education. Unlike