Path: utzoo!attcan!uunet!lll-winken!lll-lcc!lll-tis!helios.ee.lbl.gov!pasteur!ucbvax!KIEWIT.DARTMOUTH.EDU!deh From: deh@KIEWIT.DARTMOUTH.EDU ("KIEWIT::DEH") Newsgroups: comp.os.vms Subject: Re: "$" in Logicals Message-ID: <8807111751.AA21251@dartvax.dartmouth.edu> Date: 11 Jul 88 17:51:00 GMT Sender: daemon@ucbvax.BERKELEY.EDU Reply-To: "KIEWIT::DEH"Organization: The Internet Lines: 27 > I have heard here, and elsewhere, that dollar signs ($) are "reserved" > by digital for their own use in logicals. Nevertheless our system > managers have named our disks "PRODUCT$DISK" and such. Could somebody > clarify exactly WHERE DEC states this policy (e.g. in 4.6 release notes > page blah-blah paragraph 87...) so I can go look it up. Also, do device > names qualify as logicals, and/or just what does the restriction cover? > In the version 5.0 _Guide_to_Creating_VMS_Modular_Procedures_ (AA-LA58A-TE), Chapter 3, ``Coding'', discusses naming conventions for facilities, procedures, files, modules, PSECTs, lock resources, global variables, and statuses. Some are required, some only suggested. In all cases, DEC reserves the use of the ``$'' to itself and leaves ``_'' (underscore) to the rest of the world. Logical names are not explicitly mentioned here, but the implication is clear. Although some logical names are not deriviative from a software system (like your product$disk), many are, and would automatically use an underscore instead of a dollar sign. In the case of disks, VMS automatically gives them a logical name of the form DISK$xxx, where xxx is the disk label. This is a DEC defined name. You could certainly use DISK$PRODUCT, even if the disk label were something besides PRODUCT. But someday, some DEC product just might want to use the logical name PRODUCT$DISK. Even if you do change your locally defined name to PRODUCT_DISK, there is still the problem of importing a third party package that uses that logical name or filename. If you use much third party software, such a collision is likely to happen at some time. ------