I loved [Keywords] in 4e. I thought it was a marvelous design concept. Magic missile causes [Force] damage. That damage is affected by things that affect [Force], but not things that prevent you from forcing open a door. A beautiful bit of scenery or jewelry can be charming without triggering an elf's defenses against [Charm]; likewise, being immune to [Sleep] doesn't mean you can't fall asleep.
On the downside, BY DEFINITION, swords cause [Slashing] damage, even when you strike with "flat of the blade". If you decide ritual witchcraft is a thing in your setting, you need to decide if it is [Arcane], [Primal], or [Divine], because inventing [Witchcraft] means it doesn't interact with anything else in the system. (Like the old "do psionics work in an antimagic shell?" debate.) Or, you can hybridize and say it's "[Divine]+[Primal]" (acts as the better of either, which is clearly better) or "[Divine] or [Primal]" (acts as the worse of either, which is clearly weaker), or "depends on the circumstance" (which goes against the whole point of keywords...).
As a programmer (long ago, but still), keywords make sense to me. Most of my players... don't care. Some, with comprehension issues, find it easier to use, "if it fits, it sits" style. One of my players hates them with a passion, because it "interferes with creativity" (i.e. making things do something never intended or considered before).