Помимо вкусовых и культурных вопросов (как уже указывал Мейсон)
Могут быть причины, по которым конвенция связана с определенным языком, а другие языки также могут иметь свои причины.
Я могу только быстро придумать несколько примеров:
На языках, которые не требуют, чтобы тип указателя был определен перед использованием (например, большинство не-Borland Pascals, C и т. Д.), Буква "P" обычно требуется редко.
Другие языки также могут иметь дополнительные средства устранения неоднозначности (например, в C, где часто типы пишутся в верхнем регистре, а переменные или поля получают идентификатор в нижнем регистре) и не нуждаются в «T». (Строго говоря, Delphi не является ни по крайней мере для полей, так как идентификаторы в некотором смысле зависят от контекста (например, отдельные пространства имен для полей и типов), но соглашение старше этой функции)
Кстати, вы забыли «I» для интерфейса, а имена перечислений начинаются с префикса, полученного из имени базового типа (например,
TStringsDefined = set of (sdDelimiter, sdQuoteChar, sdNameValueSeparator,
sdLineBreak, sdStrictDelimiter)
)
и т.д..
Хм, это еще один бит для конкретного языка, поскольку Object Pascal всегда добавляет имена перечислений в глобальное пространство (вместо того, чтобы требовать enumtype.enumname). С префиксом происходит меньшее загрязнение глобального пространства.
Это одна из моих любимых мозолей с Delphi, кстати, отсутствие контроля над импортом (ИМПОРТ КАЧЕСТВА в стиле Modula2, ОТ ИМПОРТА xxx. У некоторого расширенного Паскаля тоже есть это)