home *** CD-ROM | disk | FTP | other *** search
/ Programmer's ROM - The Computer Language Library / programmersrom.iso / ada / online / help.ex3 < prev    next >
Encoding:
Text File  |  1988-05-03  |  21.2 KB  |  646 lines

  1. -- A user of the Ada Software Repository on SIMTEL20 recently complained
  2. -- to the ADA-SW mailing list of having problems in compiling the TRACKER
  3. -- management tool.  His problem may not be unique, and, in the interest
  4. -- of trying to help him and other users who may be encountering similar
  5. -- problems, I have prepared the following terminal session.  It illustrates
  6. -- the steps I took in investigating his problem.
  7.  
  8. -- The following terminal session was recorded on the NOSC-TECR DDN host
  9. -- computer (in San Diego, I believe).  The FTP session illustrates the
  10. -- speed of FTP between SIMTEL20 (in White Sands, New Mexico) and NOSC-TECR.
  11. -- All work is done as a "normal" user (without using my priveleged account).
  12. -- The commands required by your particular FTP server may not be the same
  13. -- as the commands I am using in this demonstration -- FTP servers differ
  14. -- widely -- but this should be generic enough to allow you to figure out
  15. -- what your particular commands are.
  16.  
  17. -- My comments are on lines prefixed with "--" (like these).  All other lines
  18. -- are extracted from the transmission from NOSC-TECR with much extraneous
  19. -- detail edited out (to prevent this text from being too long).
  20.  
  21.             -- Rick Conn, 27 Feb 86
  22.  
  23. -- The first step I took in looking at the TRACKER problem was to
  24. -- identify the program referred to.  I had the following hints:
  25. -- it was named TRACKER and it was a Management tool
  26.  
  27. -- From NOSC-TECR, I ran the online documentation system for the
  28. -- Ada Repository.  I had copied the programs and data base over to
  29. -- NOSC-TECR from SIMTEL20 earlier, compiled the programs, and initialized
  30. -- the data base as per the documentation.  See PD:<ADA.ONLINE-DOC>.
  31.  
  32. -- Upon first running the online documentation system, I saw the following
  33. -- top-level menu:
  34.  
  35. Ada                   AI                    APSE Interactive Mon  
  36. ANSI-LRM              Benchmarks            CM_Data               
  37. Compilation_Order     Components            Cross_Reference       
  38. Data Base Management  DDN                   Editors               
  39. Education             External_Tools        Forms_Generator       
  40. General               Graphical_Kernel_Sys  Management_Tools      
  41. Math_Library          Menu                  Message_Handling      
  42. Metrics               Miscellaneous_Tools   NOSC_Tools            
  43. Online_Documentation  Pager                 Pointers              
  44. Pretty_Printers       Program_Stubber       Simulation            
  45. Spelling_Checkers     Starter_Kit           Style_Checkers        
  46. Virtual_Terminal      WIS-ADA_Tools         
  47.  
  48.  
  49. -- My guess, which later proved to be correct, was that the TRACKER
  50. -- program would be under the topic of "Management_Tools", so I selected
  51. -- this topic as shown below.  Note that I only needed to type enough
  52. -- characters to be unique.
  53.  
  54.  
  55. Level  0 Menu: (Exit, Selection)  man
  56.  
  57. -- The selection "man" generated the following (white space omitted):
  58.  
  59. 1 Management_Tools
  60.  
  61. PD:<ADA.MANAGEMENT-TOOLS>
  62.  
  63.         This subdirectory contains tools for use in  managing  an  Ada
  64. software development project.  Status tracking and Manpower estimation
  65. tools are included.
  66.  
  67.  
  68.    PD:<ADA.MANAGEMENT-TOOLS>
  69.                   Bytes(SZ)  
  70.  
  71.  MANAGE.CMM.1     1397(7)    
  72.    .PRO.1         3795(7)    
  73.  MANAGETR.DOC.1   25044(7)   
  74.  MANPOWER.DIS.1   167(7)     
  75.    .DOC.1         18973(7)   
  76.    .PRO.1         3795(7)    
  77.    .SRC.1         19412(7)   
  78.  PPLANNER.ABS.1   1594(7)    
  79.    .CMM.1         995(7)     
  80.    .DOC.1         144593(7)  
  81.    .PRO.1         3590(7)    
  82.    .SRC.1         394030(7)  
  83.    .TST.1         47041(7)   
  84.  PPLANNERS.DIS.1  178(7)     
  85.  PPLANNERT.DIS.1  410(7)     
  86.  TRACKDOC.DIS.1   67(7)      
  87.  TRACKER.DOC.1    262297(7)  
  88.    .INS.1         2924(7)    
  89.    .PRO.1         3795(7)    
  90.    .SRC.2         456782(7)  
  91.    .TST.1         37240(7)   
  92.  TRACKSRC.DIS.1   1432(7)    
  93.  
  94.  Total of 571 pages in 22 files
  95.  
  96. -- As a guess, TRACKER was probably what I was looking for.  Since I'm
  97. -- just interested in looking at the code and resolving the CALENDAR
  98. -- question, I did not bother to transfer all the TRACK*.* files to
  99. -- NOSC-TECR.  Instead, I only transferred the following:
  100. --
  101. --    TRACKER.INS -- probably installation instructions
  102. --    TRACKER.PRO -- the prologue (who wrote it and other good info)
  103. --    TRACKER.SRC -- probably the source code in pager format since
  104. --        there are no TRACKER.ADA files
  105. --    TRACKER.TST -- probably test routines or data
  106. --
  107. -- FYI, I also looked for TRACKER in the next lower menu:
  108.  
  109. Level  0 Topic: 1 Management_Tools (Print, Exit, Up, Last, Menu)  m
  110. Cost_Estimation       General_Management    Manpower              
  111. Project_Tracking      
  112.  
  113.  
  114. -- "Project_Tracking" is probably it.  For more detail:
  115.  
  116. Level  1 Menu: (Exit, Up, Selection)  proj
  117.  
  118. 2 Project_Tracking
  119.         General Management 
  120.  
  121. Author       : GTE Sylvania Systems Group 
  122.              : Western Division 
  123.  
  124. Keywords     : Tracking
  125.  
  126. Abstract     :
  127.  The TRACKR program tracks the progress within projects and 
  128. generates reports, estimates time to complete a project, 
  129. and estimates project requirements.  INPREP builds the data 
  130. file for TRACKR interactively and outputs error messages for 
  131. invalid data.  The MANPOWER program based on the Simple Boehm 
  132. Model produces manpower loading curves for several calculated 
  133. schedules based on the number of lines of code and type of 
  134. system. 
  135.  
  136. -- More than likely, this is what the user was referring to.  If I'm
  137. -- wrong, I can use the online doc system to look further.  Elapsed time
  138. -- in the online doc system so far: approx 2 minutes
  139.  
  140. -- I then exited the online doc system, moved into a directory I could
  141. -- work from, and then ran FTP to connect to SIMTEL20.  This directory
  142. -- was already set up with a blank Ada library to compile into.
  143.  
  144. -- The FTP session follows:
  145.  
  146. --   1. Run FTP and connect to SIMTEL20
  147.  
  148. $ ftp simtel20
  149.  Connection Opened
  150.  Using 8-bit bytes.
  151. <SIMTEL20.ARPA FTP Server Process 5Z(46)-7 at Thu 27-Feb-86 19:23-MST
  152. nosc-tecr FTP User Process (Version 3.00)
  153.  
  154. --   2. Set my file type to ASCII
  155. *ascii
  156. <Type A ok.
  157.  
  158. --   3. Log in as a normal user (anonymous login)
  159. *login anonymous
  160. <ANONYMOUS user ok, send real ident as password.
  161. Password: 
  162. <User ANONYMOUS logged in at Thu 27-Feb-86 19:23-MST, job 8. 
  163.  
  164. --   4. Move to the target directory which contains the TRACKER files.
  165. -- Since I plan to extract only, no password is necessary.
  166. *cd pd:<ada.management-tools>
  167. <Default name accepted. Send password to connect to it.
  168.  
  169. --   5. Transfer the desired files: 
  170. --    TRACKER.SRC
  171. --    TRACKER.PRO
  172. --    TRACKER.INS
  173. --    TRACKER.TST
  174. *get tracker.src
  175. <Port 7.67 at host 26.1.0.35 accepted.
  176. <ASCII retrieve of PD:<ADA.MANAGEMENT-TOOLS>TRACKER.SRC.2 started.
  177. 443709 bytes in 146 seconds--24312 bps
  178. <Transfer completed. 456782 (8) bytes transferred.
  179. *get tracker.pro
  180. <Port 7.70 at host 26.1.0.35 accepted.
  181. <ASCII retrieve of PD:<ADA.MANAGEMENT-TOOLS>TRACKER.PRO.1 started.
  182. 3717 bytes in 1 seconds--29736 bps
  183. <Transfer completed. 3795 (8) bytes transferred.
  184. *get tracker.ins
  185. <Port 7.71 at host 26.1.0.35 accepted.
  186. <ASCII retrieve of PD:<ADA.MANAGEMENT-TOOLS>TRACKER.INS.1 started.
  187. 2836 bytes in 1 seconds--22688 bps
  188. <Transfer completed. 2924 (8) bytes transferred.
  189. *get tracker.tst
  190. <Port 7.72 at host 26.1.0.35 accepted.
  191. <ASCII retrieve of PD:<ADA.MANAGEMENT-TOOLS>TRACKER.TST.1 started.
  192. 36681 bytes in 15 seconds--19560 bps
  193. <Transfer completed. 37240 (8) bytes transferred.
  194.  
  195. -- Got them -- now exit
  196. *quit
  197. exit
  198.  
  199.  
  200. -- First, I'll look at TRACKER.PRO to overview the release info:
  201.  
  202. $ type tracker.pro
  203.  
  204. -------- SIMTEL20 Ada Software Repository Prologue ------------
  205. --                                                           -*
  206. -- Unit name    : General Management 
  207. -- Version      : 1.0
  208. -- Contact      : Lt. Colonel Falgiano
  209. --              : ESD/SCW
  210. --              : Hanscom AFB, MA  01731
  211. -- Author       : GTE Sylvania Systems Group 
  212. --              : Western Division 
  213. --              : PO Box 7188  
  214. --              : San Diego, Ca 94039 
  215. -- DDN Address  :
  216. -- Copyright    : (c) 1985 GTE, Inc. 
  217. -- Date created : Dec. 1984 
  218. -- Release date : May  1985 
  219. -- Last update  : 
  220. --                                                           -*
  221. ---------------------------------------------------------------
  222. --                                                           -*
  223. -- Keywords     : 
  224. ----------------:
  225. --
  226. -- Abstract     : The TRACKR program tracks the progress within projects and 
  227. ----------------: generates reports, estimates time to complete a project, 
  228. ----------------: and estimates project requirements.  INPREP builds the data 
  229. ----------------: file for TRACKR interactively and outputs error messages for 
  230. ----------------: invalid data.  The MANPOWER program based on the Simple Boehm 
  231.  
  232. ----------------: Model produces manpower loading curves for several calculated 
  233.  
  234. ----------------: schedules based on the number of lines of code and type of 
  235. ----------------: system. 
  236. ----------------: 
  237. ----------------: 
  238. ----------------:
  239. ----------------: This tool was developed as a precursor for 
  240. ----------------: the WMCCS Information System (WIS).  An
  241. ----------------: executable version of the tool has been 
  242. ----------------: demonstrated.  This source code has sub-
  243. ----------------: sequently been recompiled but has not under-
  244. ----------------: gone extensive testing.
  245. ----------------:
  246. --                                                           -*
  247. ------------------ Revision history ---------------------------
  248. --                                                           -*
  249. -- DATE         VERSION AUTHOR                  HISTORY 
  250. -- 5/84            1.0                          Initial Release 
  251. --                                                           -*
  252. ------------------ Distribution and Copyright -----------------
  253. --                                                           -*
  254. -- This prologue must be included in all copies of this software.
  255. -- 
  256. -- This software is copyright by the author.
  257. -- 
  258. -- This software is released to the Ada community.
  259. -- This software is released to the Public Domain (note:
  260. --   software released to the Public Domain is not subject
  261. --   to copyright protection).
  262. -- Restrictions on use or distribution:  NONE
  263. --                                                           -*
  264. ----------------- Disclaimer ----------------------------------
  265. --                                                           -*
  266. -- This software and its documentation are provided "AS IS" and
  267. -- without any expressed or implied warranties whatsoever.
  268. --
  269. -- No warranties as to performance, merchantability, or fitness
  270. -- for a particular purpose exist.
  271. --
  272. -- Because of the diversity of conditions and hardware under
  273. -- which this software may be used, no warranty of fitness for
  274. -- a particular purpose is offered.  The user is advised to 
  275. -- test the software thoroughly before relying on it.  The user
  276. -- must assume the entire risk and liability of using this 
  277. -- software.
  278. --
  279. -- In no event shall any person or organization of people be
  280. -- held responsible for any direct, indirect, consequential
  281. -- or inconsequential damages or lost profits.
  282. --                                                          -*
  283. ----------------- END-PROLOGUE -------------------------------
  284.  
  285.  
  286. -- Next, I'll type out the installation instructions:
  287.  
  288.  
  289. $ type tracker.ins
  290.  
  291.  
  292.  
  293.  
  294.  
  295.  
  296.  
  297.  
  298.  
  299. 1  INSTALLING TRACKER
  300.  
  301.  
  302.  
  303.  
  304.  
  305. 1.1  Changing TRACKER Parameters
  306.  
  307.  
  308.  
  309.  
  310.  
  311.      There are 3 parameters which may be modified before building  the
  312.  
  313.  
  314. executable  version  of  TRACKER.   These  parameters  are  located in
  315.  
  316.  
  317. package DATA_PKG,  file  DATAPKG.ADA.   The  parameters  describe  the
  318.  
  319.  
  320. working  calendar  of  the  company installing TRACKER and are used to
  321.  
  322.  
  323. predicting  the  completion  date  for  projects.   The  holidays  and
  324.  
  325.  
  326. vacation  days  are  evenly  distributed throughout the calendar year.
  327.  
  328.  
  329. The parameters are as follows:
  330.  
  331.  
  332.  
  333.  
  334.  
  335.     Name of Constant       Default  Description
  336.  
  337.  
  338.     ----------------       ------   -----------
  339.  
  340.  
  341.     DAYS_IN_WORK_WEEK        5      number of work days in the 7 day week
  342.  
  343.  
  344.     HOURS_IN_WORK_DAY        8.0    number of hours worked in 1 work day
  345.  
  346.  
  347.     WORK_DAYS_OFF_IN_YEAR   10      number of holidays and vacation days
  348.  
  349.  
  350.                                         on an average  
  351.  
  352.  
  353.  
  354.  
  355.  
  356.  
  357.  
  358.  
  359.      In order to change  the  constants,  the  person  installing  the
  360.  
  361.  
  362. software  must  edit  the  DATA_PKG  (contained  in file DATAPKG.ADA).
  363.  
  364.  
  365. After the parameters have been changed  to  the  desired  values,  the
  366.  
  367.  
  368. TRACKER executable image is now ready to be built.
  369.  
  370.  
  371.  
  372.  
  373.  
  374.  
  375.  
  376.  
  377.  
  378.  
  379.  
  380. 1.2  Compiling And Linking TRACKER
  381.  
  382.  
  383.  
  384.  
  385.  
  386.      If the system TRACKER is being installed on is a VAX,  the  files
  387.  
  388.  
  389. can  be compiled by submitting the command file called COMALL.COM.  If
  390.  
  391.  
  392. some other system is being used, the Ada files should be  compiled  in
  393.  
  394.  
  395. the following order:
  396.  
  397.  
  398.  
  399.  
  400.  
  401.         CALENDARS.ADA
  402.  
  403.  
  404.         CALENDARB.ADA
  405.  
  406.  
  407.         LISTPKGS.ADA
  408.  
  409.  
  410.         LISTPKGB.ADA
  411.  
  412.  
  413.         DATAPKG.ADA
  414.  
  415.  
  416.         VT100S.ADA
  417.  
  418.  
  419.         VT100B.ADA
  420.  
  421.  
  422.         PROMPTS.ADA
  423.  
  424.  
  425.         PROMPTB.ADA
  426.  
  427.  
  428.         TRACKER.ADA
  429.  
  430.  
  431.         INITTR.ADA
  432.  
  433.  
  434.         SETUPTR.ADA
  435.  
  436.  
  437.         MANDATA.ADA
  438.  
  439.  
  440.         PRIOR.ADA
  441.  
  442.  
  443.         CALCTIME.ADA
  444.  
  445.  
  446.         CHKPCT.ADA
  447.  
  448.  
  449.         FIXDATA.ADA
  450.  
  451.  
  452.         FIXRESET.ADA
  453.  
  454.  
  455.         FIXORIG.ADA
  456.  
  457.  
  458.         WRDATA.ADA
  459.  
  460.  
  461.         MENUDR.ADA
  462.  
  463.  
  464.  
  465.                                                                 Page 2
  466.  
  467.  
  468.  
  469.  
  470.  
  471.  
  472.  
  473.  
  474.         GETDATA.ADA
  475.  
  476.  
  477.         GLOBAL.ADA
  478.  
  479.  
  480.         AC.ADA
  481.  
  482.  
  483.         MS.ADA
  484.  
  485.  
  486.         PR.ADA
  487.  
  488.  
  489.         SS.ADA
  490.  
  491.  
  492.         EL.ADA
  493.  
  494.  
  495.         REPORT.ADA
  496.  
  497.  
  498.         CALCPCT.ADA
  499.  
  500.  
  501.         RCOMMENTS.ADA
  502.  
  503.  
  504.         RDATEDONE.ADA
  505.  
  506.  
  507.         RLISTEL.ADA
  508.  
  509.  
  510.         RLISTMS.ADA
  511.  
  512.  
  513.         RLISTPR.ADA
  514.  
  515.  
  516.         RLISTSS.ADA
  517.  
  518.  
  519.         RPAGE.ADA
  520.  
  521.  
  522.         RPARAM.ADA
  523.  
  524.  
  525.         RPCTBYSS.ADA
  526.  
  527.  
  528.         RPRINTED.ADA
  529.  
  530.  
  531.         RSUMMS.ADA
  532.  
  533.  
  534.         RSUMSS.ADA
  535.  
  536.  
  537.         RWORKBYSS.ADA
  538.  
  539.  
  540.         RWORKDIST.ADA
  541.  
  542.  
  543.  
  544.  
  545.  
  546.  
  547.  
  548.  
  549.      After all units have been successfully recompiled,  they  can  be
  550.  
  551.  
  552. linked together, forming the executable version.
  553.  
  554.  
  555.  
  556. -- Note that a compilation order is given, and there are modules named
  557. -- CALENDAR or something like that.  This may be the source of the
  558. -- problem.
  559.  
  560. -- I now need to examine the SRC file.  PAGER, another tool that I transferred
  561. -- from the Ada Repository earlier, is very convenient for doing this.
  562.  
  563.  
  564. $ pager
  565. PAGER, Version 1.6
  566. Type HELP for Help
  567.  
  568. -- For illustration, these are the commands.  Only the first letter is
  569. -- required.
  570. PAGER> h
  571. PAGER Commands:
  572.  CHECK filename  --  Ada Check on File
  573.  LIST filename   --  List Names of Component Files
  574.  PAGE filename   --  Create Paged File
  575.  SCAN filename   --  List Files in Paged File
  576.  TOGGLE          --  Indicate Flag Settings
  577.  TOGGLE flag     --  Toggle Indicated Flag:
  578.                      Comment, Include File, or
  579.                      Verbose
  580.  UNPAGE filename --  Extract from Paged File
  581.  X (Exit)        --  Exit PAGER
  582.  
  583. -- I can SCAN the contents of TRACKER.SRC to obtain useful information
  584. -- for later.  Note the following from this listing:
  585. --    1) data on magnitude of the software
  586. --    2) names and sizes of the component files
  587. --    3) if you compare this listing with the installation instructions,
  588. --        you will note that the component files are stored in
  589. --        compilation order; I can probably compile the entire
  590. --        tool by simply issuing one compilation command on the
  591. --        TRACKER.SRC file; however, I am interested in the
  592. --        CALENDAR information
  593. PAGER> s tracker.src
  594. Input File: tracker.src
  595.   Ada Statements:   4343
  596.   Ada Comments:     3196
  597.   Text Lines:      13072
  598.   Checksum:          125
  599.   Component Files -- 
  600.     calendars.ada
  601.             29 Lines
  602.     calendarb.ada
  603.            237 Lines
  604.     listpkgs.ada
  605.             35 Lines
  606.     listpkgb.ada
  607.            322 Lines
  608.     datapkg.ada
  609.            257 Lines
  610.     vt100s.ada
  611.             18 Lines
  612.     vt100b.ada
  613.            844 Lines
  614.     prompts.ada
  615.             54 Lines
  616.     promptb.ada
  617.           2010 Lines
  618.     tracker.ada
  619.            155 Lines
  620.     inittr.ada
  621.             36 Lines
  622.     setuptr.ada
  623.             82 Lines
  624.     mandata.ada
  625.             70 Lines
  626.     prior.ada
  627.            209 Lines
  628.     calctime.ada
  629.            242 Lines
  630.     chkpct.ada
  631.             51 Lines
  632.     fixdata.ada
  633.            122 Lines
  634.     fixreset.ada
  635.            131 Lines
  636.     fixorig.ada
  637.             32 Lines
  638.     wrdata.ada
  639.             61 Lines
  640.     menudr.ada
  641.            218 Lines
  642.     getdata.ada
  643.             64 Lines
  644.     global.ada
  645.            138 Lines
  646.     ac.ada
  647.            684 Lines
  648.     ms.ada
  649.            567 Lines
  650.     pr.ada
  651.            853 Lines
  652.     ss.ada
  653.            519 Lines
  654.     el.ada
  655.           1304 Lines
  656.     report.ada
  657.            182 Lines
  658.     calcpct.ada
  659.            262 Lines
  660.     rcomments.ada
  661.             63 Lines
  662.     rdatedone.ada
  663.            369 Lines
  664.     rlistel.ada
  665.            253 Lines
  666.     rlistms.ada
  667.            331 Lines
  668.     rlistpr.ada
  669.            289 Lines
  670.     rlistss.ada
  671.            311 Lines
  672.     rpage.ada
  673.             46 Lines
  674.     rparam.ada
  675.            260 Lines
  676.     rpctbyss.ada
  677.            174 Lines
  678.     rprinted.ada
  679.             52 Lines
  680.     rsumms.ada
  681.            267 Lines
  682.     rsumss.ada
  683.            266 Lines
  684.     rworkbyss.ada
  685.            197 Lines
  686.     rworkdist.ada
  687.            274 Lines
  688.  
  689. -- Now to extract the components from TRACKER.SRC; I have to extract
  690. -- all of them, but PAGER is fast and it does not take long.  Note the
  691. -- file names with the "--" prefix; it really appears that TRACKER.SRC
  692. -- was designed to be compiled without component separation being
  693. -- necessary
  694. PAGER> u tracker.src
  695.      --calendars.ada
  696.             29 Lines
  697.      --calendarb.ada
  698.            237 Lines
  699.      --listpkgs.ada
  700.             35 Lines
  701.      --listpkgb.ada
  702.            322 Lines
  703.      --datapkg.ada
  704.            257 Lines
  705.      --vt100s.ada
  706.             18 Lines
  707.      --vt100b.ada
  708.            844 Lines
  709.      --prompts.ada
  710.             54 Lines
  711.      --promptb.ada
  712.           2010 Lines
  713.      --tracker.ada
  714.            155 Lines
  715.      --inittr.ada
  716.             36 Lines
  717.      --setuptr.ada
  718.             82 Lines
  719.      --mandata.ada
  720.             70 Lines
  721.      --prior.ada
  722.            209 Lines
  723.      --calctime.ada
  724.            242 Lines
  725.      --chkpct.ada
  726.             51 Lines
  727.      --fixdata.ada
  728.            122 Lines
  729.      --fixreset.ada
  730.            131 Lines
  731.      --fixorig.ada
  732.             32 Lines
  733.      --wrdata.ada
  734.             61 Lines
  735.      --menudr.ada
  736.            218 Lines
  737.      --getdata.ada
  738.             64 Lines
  739.      --global.ada
  740.            138 Lines
  741.      --ac.ada
  742.            684 Lines
  743.      --ms.ada
  744.            567 Lines
  745.      --pr.ada
  746.            853 Lines
  747.      --ss.ada
  748.            519 Lines
  749.      --el.ada
  750.           1304 Lines
  751.      --report.ada
  752.            182 Lines
  753.      --calcpct.ada
  754.            262 Lines
  755.      --rcomments.ada
  756.             63 Lines
  757.      --rdatedone.ada
  758.            369 Lines
  759.      --rlistel.ada
  760.            253 Lines
  761.      --rlistms.ada
  762.            331 Lines
  763.      --rlistpr.ada
  764.            289 Lines
  765.      --rlistss.ada
  766.            311 Lines
  767.      --rpage.ada
  768.             46 Lines
  769.      --rparam.ada
  770.            260 Lines
  771.      --rpctbyss.ada
  772.            174 Lines
  773.      --rprinted.ada
  774.             52 Lines
  775.      --rsumms.ada
  776.            267 Lines
  777.      --rsumss.ada
  778.            266 Lines
  779.      --rworkbyss.ada
  780.            197 Lines
  781.      --rworkdist.ada
  782.            274 Lines
  783. PAGER> x
  784.  
  785. -- Finally, CALENDARS.ADA was one of the files in question.  The
  786. -- listing follows, and, as you can see, the "missing" definitions
  787. -- are stored here.  I can only assume that the user made some
  788. -- error in transferring the files or compiling them.
  789.  
  790.  
  791. $ type calendars.ada
  792.  
  793. generic
  794.   DAYS_IN_WEEK : positive := 5;
  795.   HOURS_IN_DAY : float := 8.0;
  796.   DAYS_OFF_IN_YEAR : natural := 0;
  797.  
  798. package WORK_CALENDAR is
  799.   subtype YEAR_NUMBER is integer range 1901..2099;
  800.   subtype MONTH_NUMBER is integer range 1..12;
  801.   subtype DAY_NUMBER is integer range 1..31;
  802.   subtype HOUR_NUMBER is float range 0.0..HOURS_IN_DAY;
  803.   type DATE_TYPE is record
  804.     MONTH : month_number;
  805.     DAY : day_number;
  806.     YEAR : year_number;
  807.   end record;
  808.  
  809.   NULL_DATE : constant date_type := (2,31,1902);
  810.   UNDERFLOW_DATE : constant date_type := (2,30,1901);
  811.  
  812.   function "+"  (DATE : in date_type; HOURS : in float) return DATE_TYPE;
  813.   function "+"  (HOURS : in float; DATE : in date_type) return DATE_TYPE;
  814.   function "-"  (DATE : in date_type; HOURS : in float) return DATE_TYPE;
  815.   function "-"  (DATE1, DATE2 : in date_type) return float;
  816.   function "<"  (DATE1, DATE2 : in date_type) return boolean;
  817.   function "<=" (DATE1, DATE2 : in date_type) return boolean;
  818.   function ">"  (DATE1, DATE2 : in date_type) return boolean;
  819.   function ">=" (DATE1, DATE2 : in date_type) return boolean;
  820.   function VALID (MONTH, DAY, YEAR : in integer) return boolean;
  821. end WORK_CALENDAR;
  822.  
  823.  
  824. -- The total elapsed time for this session was under 30 minutes.
  825. -- I hope this answers many questions and clarifies some points.
  826. -- There are other terminal sessions and several document files in
  827. -- the Ada Repository on SIMTEL20 which were also designed to show
  828. -- you how to do this.  It is just a matter of reading through the
  829. -- files in GENERAL and the Welcome message.
  830.  
  831.