Skip to main content
Planned maintenance impacting Stack Overflow and all Stack Exchange sites is scheduled for Monday, September 16, 2024, 5:00 PM-10:00 PM EDT (Monday, September 16, 21:00 UTC- Tuesday, September 17, 2:00 UTC). The email/password authentication method will be unavailable for logging in and registering. Read more here
227 votes
Accepted

Is there a name for the (anti- ) pattern of passing parameters that will only be used several levels deep in the call chain?

The data itself is called "tramp data". It is a "code smell", indicating that one piece of code is communicating with another piece of code at a distance, through intermediaries. Increases rigidity ...
BobDalgleish's user avatar
  • 4,724
115 votes

What is a domain?

The domain is the real-world context in which you're attempting to solve a problem using software. Each domain comes with expertise, vocabulary and tools that are part of that domain. A specific ...
Robert Harvey's user avatar
113 votes
Accepted

Is cloud computing mainly just a marketing term?

The distinguishing feature of "cloud computing" is indeed the way that it is marketed, in particular, the way that it is priced. Another synonym for "cloud computing" that I ...
Jörg W Mittag's user avatar
110 votes

Is there a name for the (anti- ) pattern of passing parameters that will only be used several levels deep in the call chain?

I don't think this, in itself, is an anti-pattern. I think the problem is that you are thinking of the functions as a chain when really you should think of each one as an independent black box (NOTE: ...
JimmyJames's user avatar
  • 28.5k
106 votes
Accepted

What is the name for storing / packing many boolean states into one number?

It's most commonly referred to as a bit field, and another term you'll often hear is bit masks, which are used to get or set individual bit values or the entire bit field at once. Many programming ...
Glorfindel's user avatar
  • 3,147
100 votes

Why are bit masks called "masks" and what purpose do they serve?

A mask (of the facial variety) is something that covers up some parts of your face and lets other parts show through. The terminology is used by analogy in computing: a bitmask covers up (filters out)...
Mason Wheeler's user avatar
94 votes
Accepted

Software bug vs. software corruption

Software corruption is the contrary of software integrity. It's the same thing as data corruption, except that the data is the software code. It can affect: the software binary stored in memory: ...
Christophe's user avatar
  • 79.9k
82 votes

Difference between Algorithm and Code

Algorithm and code are different, but related things. The relationship is simple: Code expresses algorithms. The same algorithm could be expressed in different languages, including natural language, ...
Theraot's user avatar
  • 9,201
73 votes

Is there a name for the (anti- ) pattern of passing parameters that will only be used several levels deep in the call chain?

BobDalgleish has already noted that this (anti-)pattern is called "tramp data". In my experience, the most common cause of excessive tramp data is having a bunch of linked state variables that should ...
Ilmari Karonen's user avatar
72 votes
Accepted

Difference between Algorithm and Code

In short, while there are differences in the specific meaning of the words, that civil engineer was being needlessly pedantic and balking at you not using his preferred word. There was no justifiable ...
Flater's user avatar
  • 54.9k
65 votes

What does "representing" something in memory mean in OOP?

This question is not specific to software engineering: it applies to all disciplines working with information. In 1929, the Belgian surrealist painter René Magritte explained it very intuitively in a ...
Christophe's user avatar
  • 79.9k
64 votes
Accepted

What term describes a list of exactly length 1?

Do not come up with a new word. Your name is perfectly fine: It is unambiguous and specific and consequently leaves no doubt to the reader what you are talking about. By contrast, singleton, unary, 1-...
Peter - Reinstate Monica's user avatar
62 votes

Why is the term "string" so often abbreviated as "sz"?

Its a variable naming convention called Hungarian Notation. It was common in the 90's, and notably used a lot by Microsoft in their Windows API docs. The idea is to prefix variables with hints about ...
GrandmasterB's user avatar
  • 39.4k
56 votes
Accepted

Is there terminology for "true"ing, "false"ing, and toggling a boolean?

Setting a value to true is setting it Setting it to false is clearing it. Changing the current value is toggling it. You can also use "setting it to true" and "setting it to false", of course.
user20574's user avatar
  • 4,907
55 votes

Why are bit masks called "masks" and what purpose do they serve?

A bit mask is used to mask some bits of a bit field while exposing others: initial value: 011011001 bit mask.....: 111110000 result value.: 011010000 This has been used before computing in ...
mouviciel's user avatar
  • 15.5k
48 votes

The meaning of asynchronous vs synchronous

I would like to give you an answer which is directly related to those definitions you found. When one task T1 starts a second task T2, it can happen in the following manner: Synchronous: existing ...
Doc Brown's user avatar
  • 212k
45 votes
Accepted

What are "golden files"?

A "golden file" is the expected output of some test (usually automated), stored as a separate file rather than as a string literal inside the test code. So when the test is executed, it will read in ...
Michael Borgwardt's user avatar
44 votes

Is a memoized pure function itself considered pure?

Yes. The memoized version of a pure function is also a pure function. All that function purity cares about is the effect that input parameters on the return value of the function (passing the same ...
Lie Ryan's user avatar
  • 12.4k
43 votes
Accepted

If a function mutates outer state during execution but reverts the outer state into original state after execution, does it still contain side effect?

Well, at least it is a temporary side effect. You may notice the difference to the fully side-effect free version when you run your program in a multi-threaded context. Since your case involves ...
Doc Brown's user avatar
  • 212k
41 votes

What is a domain?

It simply means the problem space you are working in. For example, if you were building an e-commerce website your domain would be "e-commerce" and would involve the processes associated with your ...
Becuzz's user avatar
  • 4,835
39 votes

Which way are downstream and upstream services?

The best way to think about this is to think of a river. The downstream part of the river cant get any water unless it comes from upstream i.e. downstream is dependent on upstream for its water. If ...
GWed's user avatar
  • 3,145
39 votes

Is there a name for the (anti- ) pattern of passing parameters that will only be used several levels deep in the call chain?

I am not aware of a specific name for this, but I guess it is worth to mention that the problem you describe is just the problem of finding the best compromise for the scope of such a parameter: as a ...
Doc Brown's user avatar
  • 212k
39 votes

Why are bit masks called "masks" and what purpose do they serve?

Bitmasks are terribly old. I haven't been able to find a reference to the first one, but they were certainly popular by the advent of 8-bit processors, and likely were also used in 4-bit processors. ...
Cort Ammon's user avatar
  • 11.6k
34 votes

Is there a common term for a fixed-length, fifo, "push through" array or list?

This sounds a lot like a circular buffer or ring buffer. It meets most of the criteria: It has a fixed size of items. They don't have to be a specific value at the start, but they could be ...
Thomas Owens's user avatar
  • 83.7k
33 votes
Accepted

Definition of "functor"; Haskell vs. C++

The two meanings are unrelated. The Haskell community (and really the Functional Programming community in general, and even the general programming community beyond FP) uses the term Functor in the ...
Jörg W Mittag's user avatar
33 votes
Accepted

What does "set" mean in programming languages like C#?

This question is one of English semantics, not programming, which initially urged me to vote to close this question as being off topic. However, because "set" is notoriously the word with ...
Flater's user avatar
  • 54.9k
32 votes
Accepted

Technical term to denote opposite of dependency injection?

Is "tight coupling" an adequate term that stands as an antonym to DI? No. Tight coupling is much more than what dependency injection deals with. Dependency injection externalizes a ...
candied_orange's user avatar
30 votes

What term describes a list of exactly length 1?

There is as far as I know, no widely accepted term in SW engineering to described a list with exactly one element In mathematics, and more precisely in the set theory, a set with only one element is ...
Christophe's user avatar
  • 79.9k

Only top scored, non community-wiki answers of a minimum length are eligible