To decide the default value of ispell-program-name, Emacs looks in turn for a number of different binaries, and uses whichever it finds first. The snag with this approach is that, just because a binary is installed, doesnʼt mean that a dictionary in your language is installed for that binary.
Since https://bugzilla.redhat.com/show_bug.cgi?id=713600 weʼve been patching the search list to look for Hunspell before Aspell, presumably because Hunspell dictionaries were considered more likely to be installed than the Aspell dictionaries.
However, now we have Enchant, which will automatically select a backend based on a configuration preference, skipping over any backends for which youʼre missing a dictionary. This seems to be exactly what we want, so letʼs use it here.