|
|
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: 1562 (0x61a)
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 an advanced problem dealing with the issue of generics. The idea is to step them through the building of a generic by first getting them to implement four simple procedures, then generalizing to a generic solution where they get two at a time with the same generic. Finally we will even nest the first set of generics inside another generic to make it even more general; First ask them to implement the body of the Test_Problems package. They should use the Lines package, Yeild procedure, and Silly_String_Utilities package to implement their solution. When they return ask them if they reused any components in their solution or if each procedure was hard coded. They will likely say that it was hard coded. Now introduce them to the Line_Iterator_Operations package. See if they can discover how both count routines could have been instantiated from the total count procedure in this generic. Also see how both display routines could be instantiated from the Put_all generic. Have them implement the body of this generic. When they have completed this, introduce them to the Genric_Iterator_Operations package. Note that this is a further generalization of the generic concept that now makes these operations generic on any Iterator type!! Get them to implement the body of this generic and reimplement their previous solution use this generic. The most creative part of this problem is to find a way to use it with other iterators. The most oportunity probably exist in Link_Tools and Directory_Tools although there may be many others.