Skip to main content
OverflowAI is here! AI power for your Stack Overflow for Teams knowledge community. Learn more
226 votes

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
131 votes

Which way are downstream and upstream services?

The downstream services are the ones that consume the upstream service. In particular, they depend on the upstream service. So the front-end is downstream to the back-end because it depends on the ...
Derek Elkins left SE's user avatar
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

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
108 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
  • 27.4k
106 votes

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

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
  • 77.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,151
80 votes

If I implement an Interface, is it called an Inheritance?

UPDATE: I've revised this answer. A number of good points were raised in the comments that deserved calling out. If my class implements an interface then can I say that I'm following inheritance? ...
Eric Lippert's user avatar
  • 46.2k
72 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

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
  • 51.7k
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
  • 77.9k
64 votes

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
61 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.2k
56 votes

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.
Quitting Due To Antisemitism's user avatar
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
  • 208k
45 votes

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

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
  • 208k
42 votes

Is there a term for unimplemented code that was written for someone else to fill in?

I've seen the term “stub” being used. For example, I believe that Eclipse automatically inserts a comment String getName() { // TODO: Auto-generated method stub return null; } into its ...
5gon12eder's user avatar
  • 7,196
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

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.2k
38 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,125
38 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
  • 208k
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
  • 82.8k
33 votes

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

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