Research any topic before you write.

Find related topics. | Discover entities. | See connections. | Build a topical map.

How to Design Programs

How to Design Programs (HtDP) is a textbook by Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, and Shriram Krishnamurthi on the systematic design of computer programs. MIT Press published the first edition in 2001 and the second edition in 2018. In addition to the for-purchase paperback, it is also freely available online.

Literary Connections, Pedagogical basis & The Teaching Languages and DrRacket

Use the mouse wheel or two fingers (on touchscreens) to zoom in and out of the map.

Research this topic

Explore the main themes, entities and connections around How to Design Programs. Start with the topic map, then use the sections below for research and deeper semantic analysis.

Explore this topic

Start with a few of the strongest sections from the source topic. These are research directions, not a list of keywords you must use.

Key facts & relationships

High-confidence facts extracted from structured source data. Use them as anchors for further research.

Author
Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi
Genre
Textbook
Publication date
February 12, 2001
Publisher
MIT Press
LC Class
QA76.6 .H697 2001
Media type
print

Topics to explore

Browse the full topic structure. Each item opens a new analysis centered on that subject.

Overview

The Design Recipe

The Teaching Languages and DrRacket

Pedagogical basis

Advanced semantic analysis

Deeper signals for content research, entity SEO and topical coverage. The plain-language headings explain what each technical view is useful for.

Map overview Semantic statistics

How to Design Programs

Nodes24
Edges23
Triples24
Avg. degree1.92
Density0.083333
Components1

How this topic connects Entity context

See the strongest relationship patterns around the current topic before diving into the raw triples.

How to Design Programs

Top relations

related to Pedagogical basis · 13
How to Design Programs → Computer Programs, Computer Science Curriculum, Design Programs, How, HtDP, In, Interpretation, It, Scheme, SICP, Structure, The, The Structure
Author · 1
How to Design Programs → Matthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi
Genre · 1
How to Design Programs → Textbook
ISBN · 1
How to Design Programs → .mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:r…
LC Class · 1
How to Design Programs → QA76.6 .H697 2001
Media type · 1
How to Design Programs → print
Pages · 1
How to Design Programs → 720
Publication date · 1
How to Design Programs → February 12, 2001
Publication place · 1
How to Design Programs → United States
Publisher · 1
How to Design Programs → MIT Press

Important terminology Word statistics

Use these terms to understand the vocabulary surrounding the topic, not as a checklist for keyword stuffing.

Important terminology

htdp design programming data sicp paper programs book teaching language program one languages computer knowledge focus first textbook domain process

Entity relationships Subject–Predicate–Object triples

SubjectPredicateObjectConfidenceSrc
How to Design ProgramsAuthorMatthias Felleisen, Robert Bruce Findler, Matthew Flatt, Shriram Krishnamurthi1.00infobox
How to Design ProgramsGenreTextbook1.00infobox
How to Design ProgramsISBN.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:r…1.00infobox
How to Design ProgramsLC ClassQA76.6 .H697 20011.00infobox
How to Design ProgramsMedia typeprint1.00infobox
How to Design ProgramsPages7201.00infobox
How to Design ProgramsPublication dateFebruary 12, 20011.00infobox
How to Design ProgramsPublication placeUnited States1.00infobox
How to Design ProgramsPublisherMIT Press1.00infobox
How to Design ProgramsSubjectComputer programming1.00infobox
How to Design ProgramsWebsitehtdp.org1.00infobox
How to Design Programsrelated to Pedagogical basisIn0.60section

Related concept clusters Concept neighborhoods

These clusters group vocabulary that occurs around closely connected concepts in the source material.

    Connections between topic areas Semantic bridges

    Bridges can reveal useful research angles that are easy to miss in a flat list of related terms.

    Min side: 3
    For writers, content strategists, SEOs, marketers and creators — from quick topic research to advanced semantic analysis.