Pure in Blueprints does not mean the same as pure/referentially transparent in (functional) programming. In blueprints it simply means that the node doesn’t have the Exec pin, the one where the white execution line would plug into.
As a side note, I dislike the “pure” term in Blueprints just because of this reason, it’s confusing and contradicts established terms in general programming.