1.11 Manipulating Simple HTML Documents: "docs.rkt"

► |  | How to Design Programs Teachpacks

1 | Ht DP Teachpacks
2 | Ht DP/ 2e Teachpacks

▼ | 1 | Ht DP Teachpacks

1.1 | Manipulating Images: "image.rkt"
1.2 | Simulations and Animations: "world.rkt"
1.3 | Converting Temperatures: "convert.rkt"
1.4 | Guessing Numbers: "guess.rkt"
1.5 | Master Minding: "master.rkt"
1.6 | Playing Master Mind: "master-play.rkt"
1.7 | Simple Drawing: "draw.rkt"
1.8 | Hangman: "hangman.rkt"
1.9 | Playing Hangman: "hangman-play.rkt"
1.10 | Managing Control Arrows: "arrow.rkt"
1.11 | Manipulating Simple HTML Documents: "docs.rkt"
1.12 | Working with Files and Directories: "dir.rkt"
1.13 | Graphing Functions: "graphing.rkt"
1.14 | Simple Graphical User Interfaces: "gui.rkt"
1.15 | An Arrow GUI: "arrow-gui.rkt"
1.16 | Controlling an Elevator: "elevator.rkt"
1.17 | Lookup GUI: "lkup-gui.rkt"
1.18 | Guess GUI: "guess-gui.rkt"
1.19 | Queens: "show-queen.rkt"
1.20 | Matrix Functions: "matrix.rkt"

On this page:

atom?
annotation?
end-annotation
write-file

top ← prev up next →

#### 1.11`` Manipulating Simple HTML Documents: "docs.rkt"

(require htdp/docs) | package: htdp-lib

The teachpack provides three functions for creating simple “HTML” documents:

Annotation An Annotation is a symbol that starts with “<” and ends in “>”. An end annotation is one that starts with “</”.

> procedure (atom? x) → boolean?
> x : any/c

Determines whether or not a value is a number, a symbol, or a string.

> procedure (annotation? x) → boolean?
> x : any/c

Determines whether or not a symbol is a document annotation.

> procedure (end-annotation x) → Annotation
> x : Annotation

Consumes an annotation and produces a matching ending annotation.

> procedure (write-file l) → true
> l : (list-of atom)

Consumes a list of symbols and annotations and prints them out as a "file".

Sample session: set teachpack to "docs.rkt" and click Run:

> > (annotation? 0)
> false
> > (annotation? '<bold>)
> true
> > (end-annotation 0)
> end-annotation: not an annotation: 0
> > (write-file (list 'a 'b))
> a b

top ← prev up next →