The .p convention is just that, a convention. Compile a file with any extension or even no extension and it becomes a .r just fine. People have used other extensions for a variety of reasons over the years. One is to keep a file from being automatically compiled by a tool, like OEA, which will compile all .p files. There are a variety of reasons to want to keep them from being compiled, most commonly that they don't compile as they sit, but need run time arguments to complete them so that they are compiled on the fly. The other idea is that some "clever" person thought these were code fragments which could either be run on their own or included in other code. My sympathies if that is true.