It is common to use abbreviations as names for different source program elements such as variables, constants, tables, and functions. In most cases, however, abbreviations make source programs difficult to understand and maintain. Disabbreviation means replacing abbreviated names with more informative natural names which consist of natural words. This paper presents an experimental tool to help software maintainers to disabbreviate existing source programs. The tool, which is implemented using Prolog, is an interactive and intelligent system which can suggest name replacements to its users. Common abbreviation patterns, a specialized dictionary, and comment information are used to deduce name replacements. The tool has been evaluated by using it to disabbreviate the source programs of several existing applications. About 40% of the name substitutions suggested by the tool were acceptable in the tests. Learning to use the tool does not require much effort, and one application can be disabbreviated within a few days.