Call

A call is the invocation of a function or method.

Related concepts:  FunctionMethodReturn

Closest Wikipedia entry:  Subroutine — In computer programming, a subroutine is a sequence of program instructions that performs a specific task, packaged as a unit. This unit can then be used in programs wherever that particular task should be performed. Subroutines may be defined within programs, or separately in libraries that can be used by many programs.

Authoritative Definition

Wikipedia does not necessarily offer the best fitting definition of a concept. The exact meaning we attribute to the concept of Call is based on principled authoritative sources such as:

Misconceptions about Call
40 documented Misconceptions

Check Yourself
Misconception
BaseCaseNotNeededJava
Recursive computations do not necessarily need a base case
Misconception
BaseCaseSelfRecursiveJava
The base case of a structural recursion consists of a recursive self-call
Misconception
CallNotStaticallyCheckedJava
One can invoke a method on a reference of a class that does not have that method
Misconception
CallOnPrimitiveJava
One can invoke a method on primitive values
Misconception
CallRequiresVariableJava
One needs a variable to invoke a method
Misconception
CallWithoutFrameJava
A method invocation does not necessarily allocate a stack frame
Misconception
CallbackParametersInCallerJavaScript
Parameters of a callback function may be written as parameters of the caller function
Misconception
CallerFrameContainsCalleeFormalJava
Stack frame of caller includes variables for callee's formal parameters
Misconception
CannotChainMemberAccessesJava
Member accesses cannot be chained together
Misconception
CannotChainMemberToConstructorJava
Method calls or field accesses cannot be chained to a constructor invocation
Misconception
ChainedMethodsNotCalledFromOutsideJava
Chained methods are all called on the object at the beginning of the chain
Misconception
ConstructorAllocatesJava
The constructor allocates the object
Misconception
ConstructorReturnsObjectJava
Constructors need to return objects
Misconception
ConstructorWithoutNewJava
One can write the constructor name, without new, to instantiate a class
Misconception
DeferredReturnJava
A return statement in the middle of a method doesn't return immediately
Misconception
FrameIsClassInstanceJava
A stack frame is the same as an instance of a class
Misconception
FunctionAsValueWithParenthesesJavaScript
To use a function as a value, one needs to have parentheses after its name
Misconception
FunctionsCannotBeImmediatelyInvokedJavaScript
Functions cannot be called in the expression in which they are defined
Misconception
InlineCallInExpressionTreeJava
The expression tree of an expression involving a call inlines the call's computation of the returned value
Misconception
InterproceduralEdgeJava
In an intra-procedural control-flow graph, method call nodes point to the called method
Misconception
NoCallOnStringLiteralJava
One cannot invoke methods on String literals
Misconception
NoFunctionCallsChainingJavaScript
It is not allowed to chain function calls
Misconception
NoInsideMethodCallInConstructorJava
It is foirbidden to call other methods on the same object while inside its constructor
Misconception
NoStringToStringJava
One cannot invoke toString() on a String
Misconception
NumberOfParametersMatchArgumentsJavaScript
Functions must be called with the same number of arguments as defined in their signature
Misconception
ObjectLabeledWithConstructorSignatureJava
In stack and heap diagrams, an object on the heap is labeled like a stack frame of a constructor call
Misconception
ObjectsMustBeNamedJava
A variable is needed to instantiate an object
Misconception
OutsideInMethodNestingJava
Nested method calls are invoked outside in
Misconception
ParenthesesOnlyIfArgumentJava
() are optional for method calls without arguments
Misconception
RecursiveCallSiteNoReturnJava
Tail-recursive call sites have no continuation
Misconception
ReturnCallJava
Return statements need () around the return value
Misconception
RightToLeftChainingJava
Chained accesses are invoked from right to left
Misconception
SetTimeout0IsSynchronousJavaScript
Scheduling the execution of a function after 0 milliseconds with setTimeout is equivalent to a synchronous call
Misconception
StackTraceIsCallHistoryJava
A stack trace is the sequence of previously called methods
Misconception
StaticCallPolymorphicJava
A static method call is dispatched polymorphically at runtime based on the argument types
Misconception
StaticDispatchJava
The method to be called is determined by the static type
Misconception
StaticFrameInGlobalsJava
Stack frame of static method calls lives in the global memory area
Misconception
SuperAlwaysHasParenthesesJava
To call a method on a superclass, parentheses are needed after the keyword super
Misconception
SuperNotFirstStatementJava
super() can be called anywhere in the constructor of a subclass
Misconception
ThisChildInCallExpressionJava
Instance method or constructor call nodes in expression trees have a child labeled "this"

Stay up-to-date

Follow us on  twitter to hear about new misconceptions.