Carel Fellinger wrote:
What is generally thought of as the proper extension to use for files holding an Extended Pascal Interface Module, and what is the proper extension for files holding the corresponding Implementation Module. Both for the simple case where each module only has one interface exported.
GPC is rather liberal WRT file name extensions. It tries to accept "all known Pascal" extensions, currently .pas, .p, .pp and .dpr (in descdending order of preference, at least of mine ;-).
"Accept" in the meaning that it considers them as Pascal sources without special options (`-x Pascal') and that it searches for modules/units in such files. It makes no differences between EP modules, UCSD/BP units and programs in this regard.
More tricky is the question of the base name of modules. GPC allows you to put both interface and implementation in the same file. If this file is named like the interface, GPC will find it automatically by the `import' statement. Otherwise you can use the (non-standard I think) `in 'filename'' addition.
If you prefer to put them in two distinct files, I'm not sure (I haven't done this), but I guess you might have to specify at least on of the file names on the command-line (or in the Makefile) then.
And finally, do you deem it wise to use yet another extension to denote a file containig an Extended Pascal Program as opposed to a Module of some sort?
I don't do so myself, I call everything `.pas' (instead, I put my general-purpose units and my small programs in separate directories, ~/units and ~/progs, while my larger projects typically contain one program (easily recognizable by the name of the projects) and several project-specific units in one directory).
If you prefer, you can choose between the four accepted extensions as you see fit. Or do you have yet another one in mind? ;-)
Frank