Perhaps I should illustrate my point with an example. Suppose I have lookup (reference) table for gender. It contains entries for 'Male', 'Female', and perhaps 'unknown'. Since I like my PKs to be consistent I always give my tables a meaningless PK, so I need a unique constraint on the descripton.
But since the table is so small I doubt that it would benefit from any index, not even one on the PK. Any database engine that is smart enough could cache the whole table in memory (possibly with in-memory indexes created while caching the data) and for any retrieval operations it will most likely outperform any implementation that requires additional disk access such as physically persisted indexes. The table will also be faster to update because there are no persistent indexes to maintain.
Even if I would make the description the natural PK, I still don't see why an index would be usefull for anything but simplifying the code of the engine.
As the table grows (if it grows) then the engine would have the freedom to switch to using an index when that becomes more efficient.
The same would be true for any similar small table. And I usually have a whole bunch of those in my databases.