home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #16 / NN_1992_16.iso / spool / comp / lang / fortran / 2876 < prev    next >
Encoding:
Text File  |  1992-07-29  |  4.8 KB  |  86 lines

  1. Newsgroups: comp.lang.fortran
  2. Path: sparky!uunet!mcsun!dxcern!vscn08.cern.ch!julian
  3. From: julian@vscn08.cern.ch (Julian James Bunn)
  4. Subject: FLOW - companion to FLOPPY - some info
  5. Message-ID: <1992Jul30.064240.18066@dxcern.cern.ch>
  6. Sender: julian@vscn08.nohost.nodomain (Julian James Bunn)
  7. Reply-To: julian@vscn08.cern.ch (Julian James Bunn)
  8. Organization: CERN European Lab for Particle Physics
  9. Date: Thu, 30 Jul 1992 06:42:40 GMT
  10. Lines: 74
  11.  
  12.  
  13.  Thanks to everyone who expressed an interest in a post of FLOW, the
  14. companion program to FLOPPY. I sent FLOW to comp.sources.misc a couple
  15. of days ago, but I guess the moderator is on hols, as it hasn't yet
  16. appeared .... The posting contains code for installation on VMS, Unix
  17. and CMS operating systems. 
  18.  
  19.  To use FLOW, you will need to have installed FLOPPY, which is available
  20. at various ftp sites (such as gatekeeper.dec.com) under the name "ffccc".
  21.  
  22.  Since there have been a couple of requests recently for "structure
  23. chart" generators in comp.lang.fortran, I include below a taste of what
  24. FLOPPY/FLOW can do ... but these are not anywhere near such powerful
  25. tools as e.g. DECSET from DEC (described by Steve Lionel recently).
  26. The report extract that follows is the "textual structure chart" for 
  27. the FLOW program itself, as produced by FLOW. (Note that the module 
  28. descriptions appearing at the end of each line are picked from the 
  29. source code itself...)
  30.  
  31.                       Meaning of Symbols:
  32.                       -------------------
  33.                       .   ==> terminal node in the tree
  34.                       *   ==> external procedure
  35.                       >   ==> subtree node, expanded below
  36.                       +   ==> multiply called terminal node
  37.                       ]   ==> procedure calling only externals
  38.  -------------------------------------------------------------------------
  39.                       ?   ==> module is in IF clause
  40.                       (   ==> module is in DO loop
  41.  *************************************************************************
  42.  EXTERNAL procedure names will not appear
  43.  =============
  44.  Node name ==> FLOW
  45.  =============
  46.  
  47.   FLOW                                                 :
  48.       |-----PRODES                                     :Steer the FLOW program
  49.                 |-----INIARR   +                       :Initialise arrays
  50.                 |-----RDFLOP   >                       :Read the data from FLOPPY
  51.                 |-----EXTERN                           :Find names of external routines
  52.                 |         |-----RDFLOP   >             :Read the data from FLOPPY
  53.                 |?----PROTRE                           :Produce the FLOW diagram
  54.                 |         |-----SEARCH   +             :Finds the index for a routine name
  55.                 |         |-----LENOCC   ]             :
  56.                 |         |?----LENOCC   ]             :
  57.                 |         |?----LENOCC   ]             :
  58.                 |         |??---LENOCC   ]             :
  59.                 |         |??---LENOCC   ]             :
  60.                 |?----PROCHT                           :Produce the graphics SC
  61.                 |         |-----SEARCH   +             :Finds the index for a routine name
  62.                 |         |-----GRINIT                 :Close the graphics package
  63.                 |         |         |-----LENOCC   ]   :
  64.                 |         |-----CHTBOX   +             :Plots a box
  65.                 |         |-----SEARCH   +             :Finds the index for a routine name
  66.                 |         |((---CHTBOX   +             :Plots a box
  67.                 |         |((---GTX                    :Plots the text at a given position
  68.                 |         |         |-----LENOCC   ]   :
  69.                 |         |((---SEARCH   +             :Finds the index for a routine name
  70.                 |         |((---CHTLIN   ]             :Calculate and plot box intersect
  71.                 |         |(((--GRCLOSE                :Close the graphics package
  72.                 |                   |-----LENOCC   ]   :
  73.                 |?----PROCOM                           :Produce the COMMON block table
  74.                 |         |-----LENOCC   ]             :
  75.                 |         |-----LENOCC   ]             :
  76.                 |?----PROQRY                           :Interactively look at the tree
  77.                           |-----CASCHG   >             :Convert any lower case to upper
  78.                           |-----SEARCH   +             :Finds the index for a routine name
  79.                           |-----CASCHG   >             :Convert any lower case to upper
  80.  
  81.  
  82. -------------------------------------------------------------------------------
  83. Julian James Bunn / CERN Computing and Networks Division. Tel.: Geneva 767 5029
  84. Email: julian@vxcrna.cxern.ch
  85. -------------------------------------------------------------------------------
  86.