Skip to main content

You are not logged in. Your edit will be placed in a queue until it is peer reviewed.

We welcome edits that make the post easier to understand and more valuable for readers. Because community members review edits, please try to make the post substantially better than how you found it, for example, by fixing grammar or adding additional resources and hyperlinks.

Required fields*

8
  • 2
    Retaining information about the original raiser is clearly a leaking abstraction. Commented Jun 24, 2024 at 18:03
  • I think in questions of "good practice" you have to take some account of popular usage. If Microsoft and all HTML use the pattern for the last 30 years, that's quite a lot of opinion on the "its good" side. Commented Jun 24, 2024 at 21:27
  • There are plenty of older design flaws around. Microsoft is known for strong backward compatibility, they did worse hacks to adhere to it. Do not mistake perseverance for wisdom. Commented Jun 24, 2024 at 22:08
  • 2
    Sure, I'm not saying its "good" cos MS does it. But it solves a problem and is a common (ubiquitous?) pattern. Can we really say its bad practice? Commented Jun 25, 2024 at 8:06
  • 1
    There is no problem is solves. Not since C. See my answer. Yes, propagating the original raiser in high-level languages is a bad practice. (I'm talking about C# and the like, not sure about HTML from your example, there is no "propagation" there). Commented Jun 25, 2024 at 8:25