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 - downloadIndex: ┃ B T ┃
Length: 763 (0x2fb) Types: TextFile Names: »B«
└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11 └─ ⟦129cab021⟧ »DATA« └─⟦bb25a46d4⟧ └─⟦f64eaa120⟧ Bits:30000752 8mm tape, Rational 1000, !projects 93 02 16 └─ ⟦6f12a12be⟧ »DATA« └─⟦bb25a46d4⟧ └─⟦2f6cfab89⟧ Bits:30000547 8mm tape, Rational 1000, !projects 94-01-04 └─ ⟦d65440be7⟧ »DATA« └─⟦bb25a46d4⟧ └─⟦this⟧
with CALENDAR; with UNCHECKED_CONVERSION; function UNIQUE return STRING is type INTEGER5 is range 0 .. 31; for INTEGER5'SIZE use 5; type TIME_STRING is array (POSITIVE range 1 .. (CALENDAR.TIME'SIZE + INTEGER5'SIZE - 1) / INTEGER5'SIZE) of INTEGER5; GOOD_CHARACTERS : constant array (INTEGER5) of CHARACTER := "012345abcdefghijklmnopqrstuvwxyz"; function TO_TIME_STRING is new UNCHECKED_CONVERSION (SOURCE => CALENDAR.TIME, TARGET => TIME_STRING); NOW : constant CALENDAR.TIME := CALENDAR.CLOCK; TS : constant TIME_STRING := TO_TIME_STRING (NOW); S : STRING (TS'RANGE); begin for I in TS'RANGE loop S (I) := GOOD_CHARACTERS (TS (I)); end loop; return S; end UNIQUE;