Chapter 9

Chapter 9 - Teach Yourself Scheme in Fixnum Days [Go to...

Info iconThis preview shows pages 1–2. Sign up to view the full content.

View Full Document Right Arrow Icon
Teach Yourself Scheme in Fixnum Days [Go to first , previous , next page; contents ; index ] Chapter 9 Structures Data that are naturally grouped are called structures . One can use Scheme's compound data types, eg, vectors or lists, to represent structures. Eg, let's say we are dealing with grouped data relevant to a (botanical) tree . The individual elements of the data, or fields , could be: height , girth , age , leaf-shape , and leaf-color , making a total of 5 fields. Such data could be represented as a 5-element vector. The fields could be accessed using vector-ref and modified using vector-set! . Nevertheless, we wouldn't want to be saddled with the burden of remembering which vector index corresponds to which field. That would be a thankless and error-prone activity, especially if fields get excluded or included over the course of time. We will therefore use a Scheme macro defstruct to define a structure data type, which is basically a vector, but which comes with an appropriate suite of procedures for creating instances of the structure, and for accessing and modifying its fields. Thus, our tree structure could be defined as: (defstruct tree height girth age leaf-shape leaf-color) This gives us a constructor procedure named
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 2
This is the end of the preview. Sign up to access the rest of the document.

This test prep was uploaded on 02/06/2008 for the course CS 4536 taught by Professor Fisler during the Winter '08 term at WPI.

Page1 / 4

Chapter 9 - Teach Yourself Scheme in Fixnum Days [Go to...

This preview shows document pages 1 - 2. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online