Maybe this needs a new perspective. Roguelike today is not Rogue from 1980.
Roguelike today (i think) is in the first place BIG MAPS. And all the other things perceived as typical roguelike are just solutions to be able to offer BIG MAPS.
Procedural (random) generation is way more easy then storing big maps in arrays. Ever tried to make an array that can represent a big map ? You will be surprised by the limits. Random (seeded) is an endless mathematical world that can be calculated on the fly and therefor does not need to be stored anywhere. Not in memory, not in the designs.
With procedural generation there is not need to design each little corner in a big map.
Procedural generation is the way to go when it is about 'only render what you see'.
It is tilebased, because tiles prune probability's.
Permadeath is just a solution to the problem that rises with storing all progress.