I don't see a difference. I compared the function GetCharacterExpRate(ref _chref, string _skill), in file Program\characters\RPGUtilite.c from COAS and ERAS, and the logic within both are the same.
The SPECIAL_S, SPECIAL_P , SPECIAL_E, SPECIAL_C , SPECIAL_I, SPECIAL_A , SPECIAL_L correspond to the PIRATES scores, and are allocated as seen in Program\characters\characters.h file:
#define SPECIAL_S "Strength"
#define SPECIAL_P "Perception"
#define SPECIAL_E "Endurance"
#define SPECIAL_C "Charisma"
#define SPECIAL_I "Intellect"
#define SPECIAL_A "Agility"
#define SPECIAL_L "Luck"
They correspond to the PIRATES descriptions, as seen in file RESOURCE\INI\texts\english\common.ini:
string = Strength,"Power"
string = Perception,"Insight"
string = Endurance,"Endurance"
string = Charisma,"Authority"
string = Intellect,"Talent"
string = Agility,"Reaction"
string = Luck,"Success"