|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: I T
Length: 1287 (0x507)
Types: TextFile
Names: »INSTRUCTOR_NOTES«
└─⟦180fe333a⟧ Bits:30000405 8mm tape, Rational 1000, SW CATALOG, 10_20_0
└─⟦180fe333a⟧ Bits:30000537 8mm tape, Rational 1000, SW Catalog 10_20_0
└─⟦5cb1d1d7f⟧ »DATA«
└─⟦3b1ee7bd8⟧
└─⟦this⟧
This is a Level II problem.
The objective of this exercise to three fold:
To get the student to really understand the use and value
of abstraction.
It is an exercise in implementing a package body that requires them
to use Several environment interfaces.
It concerns pathnames which is a topic that they will need to understand.
The key to a good solution for this problem is a good representation of the
private type Pathname. Ones first inclination is to store pathnames
as strings and manipulate string with all the other operations. Better, in
my opinion is to store an exploded pathname in terms of a list of segments
and a list of attributes. Since they have to parse them anyway to determine
if the pathname is legal, they might as well store the parsed form since
it greatly simplifies many of the other operations especially if they build
it on top of the List_Generic interface.
One method to really bring home the value of abstraction is to ask them
to write there first cut at the test driver before they begin implementation
of the body of the Pathnames package. Ask them if there is enough information
in the specification of the Pathnames to complete the test driver. If they
claim that there is not, show them how this is true.