I got my start in AD&D after the damage had already been done, and didn't really understand the difference until years later, but I will go to my grave swearing that separating race from class was a terrible mistake. Given that almost every single non-human race has infravision and the vast majority of them have the exact same class selection-- Fighter, Cleric, Thief, Fighter/Cleric, Fighter/Thief-- there's practically no reason to have nonhuman playable characters at all.
In my games, not only are nonhuman races restricted from playing certain core classes, they're restricted from playing any core classes at all-- each race has a handful of race-specific classes they're allowed to take, period. These classes include the traditional racial abilities and expand upon them, because class has been a much bigger design space than race for as long as the two have been separated.
Do it right, so that most races have the equivalent of most party roles and you leave some room for individual customization, it works out fine: most players don't feel stifled with the limited selection, and PCs of different races (but similar classes) end up feeling very different, even at higher levels. Plus, once you have a real firm grasp of how a given race's classes work... it's not that difficult to come up with new variations that fit that theme.