In the lazarus project there are a lot of .pp files.
Is there a difference to .pas files?
Only that a .pp will be found before a .pas. But mixing units that differ only in extension is not recommended.
Graeme's statement is correct, it was originally meant to set apart FPC specific code from Turbo Pascal code, but since it was only
a convention and not enforced (e.g. by automatic dialect switched), it became mixed quite quickly (in 1.0.x times).
I tried to keep .pas file associations with Delphi and .pp and with FPC, but too much is shared to make that worth the trouble.
So nowadays it doesn't mean much anymore.