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*

5
  • I'm sorry, I just started learning Unix last week, and didn't completely grasp what you're trying to say. Are you telling about the inner working of UNIX? Though, I got the dictionary part Commented Jul 23, 2020 at 1:12
  • See footnote in answer. Commented Jul 23, 2020 at 7:45
  • Right, actually, maybe you're right. I wasn't trying to solve a problem. It's just that I wanted to know what is going on, behind the scenes, with Linux's interpretation and all that. But thank you for mentioning that it's not usually necessary to do so Commented Jul 23, 2020 at 8:35
  • It's not always an anti-pattern. For example, M (a non-relational database language) and its descendant ObjectScript offer @variable syntax to do just this, which is very useful for passing around references to database nodes. The alternative would be Mergeing the entire data tree into an in-memory node, editing it and Mergeing it back into the database, which for a large data node is hugely inefficient. Commented Jul 23, 2020 at 16:29
  • Also, in bash, indirect references are genuinely essential in some cases. You can't pass an associative array as a function argument without one, for example. Particularly in bash releases which have formally adopted the ksh nameref feature, I absolutely disagree with the antipattern claim. Commented Jul 24, 2020 at 14:00