From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-0.8 required=5.0 tests=BAYES_00,INVALID_DATE autolearn=no autolearn_force=no version=3.4.4 Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!samsung!sdd.hp.com!ucsd!ucbvax!SEI.CMU.EDU!Judy.Bamberger From: Judy.Bamberger@SEI.CMU.EDU Newsgroups: comp.lang.ada Subject: ada file naming conventions Message-ID: <9010032253.AA16343@fa.sei.cmu.edu> Date: 3 Oct 90 22:53:10 GMT Sender: usenet@ucbvax.BERKELEY.EDU Organization: The Internet List-Id: Here is what we did for DARK (about 6000 lines, including some assembler): package spec: .ada package body: _body.ada assembler: _body_machine_code. For example, for a package process_table, we had: process_table.ada -- package spec PTB_body.ada -- package body; each package was assigned -- a 2-3char unique short name; this was -- used in the code as well as for names -- of files; package short names were a -- project-wide, high-level configuration -- item PTB_body_machine_code.a68 -- motorola 68020 machine code We went a bit further, and established "classes" of file names: _types.ada -- for packages collecting miscellaneous -- global types schedules_types.ada -- for example ST_body.ada -- corresponding body, doing elaboration- -- time initialisation or checking _debug.ada -- for specs with debug (print) routines _debug_body.ada -- for the corresponding debug body PTB_debug.ada -- for example PTB_debug_body.ada generic_.ada -- for the file containing a generic -- package, which also began with -- "generic_" G.ada -- for the corresponding generic body .ada -- for the spec instantiating the generic generic_process_table.ada -- the spec GPTB_body.ada -- note G before standard -- process_table.ada -- the instantiation And to call out those packages that were hardware/implementation-dependent: hardware_interface.ada -- encapsulation and renaming of -- primitive types (e.g., integer, float) -- [perhaps not the best choice of name, -- but the intention was good!] low_level_.ada -- spec for package getting very close to -- the hardware LL_body.ada -- corresponding body LL_machine_code. -- corresponding machine code low_level_hardware.ada LLH_body.ada -- note standard LL abbreviation LLH_body_machine_code.a68 We avoided subunits (too expensive compilation/link time), so we did not deal with that. People who have picked up our code have reported that our consistency and "sanity" was very helpful to them. In otherwords, whatever standard one adopts, it should be consistent and reasonable ... and documented!