in reply to Using x to build data structures considered harmful
Sure, but x can be useful too. I've used this many times before:
@keys = ... @hash{@keys} = (1) x @keys [download]