Return
Return is a common English verb and noun with origins in the Middle English period, derived from the Anglo-French term returner, signifying "to turn back," and first attested in the 14th century.[1] As a verb, it primarily denotes the act of going or coming back to a prior location, condition, or activity, such as returning home after travel, or reverting to an earlier state in thought or practice.[1][2] Transitive uses include restoring possession to an original owner, repaying in kind, or generating a yield, notably in economic contexts where investments "return" profits.[1] As a noun, return encompasses the process or instance of recurrence, a financial gain measured as rate of return on capital, formal accounts like election outcomes, or mechanical elements such as the carriage-return key on typewriters that advances to a new line.[1][2] These meanings underpin diverse applications across disciplines: in finance, return quantifies investment performance as the ratio of gain to cost;[1] in computing, a return statement terminates function execution and outputs a value to the caller;[3] in law, it refers to an official report or response to authority.[4] The term's versatility reflects causal processes of reversal or reciprocity, grounded in observable actions rather than abstract ideology, with empirical usage tracked in corpora showing dominance of spatial and restorative senses since medieval texts.[1]Finance, economics, and investment
Rate of return and related metrics
The rate of return measures the profit or loss generated by an investment relative to its cost, expressed as a percentage over a specified period.[5] It is calculated using the formula: RoR = [(ending value - beginning value + income received) / beginning value] × 100, where income includes dividends or interest.[6] For example, a stock purchased at $100 that rises to $110 with $2 in dividends yields a 12% rate of return: [(110 - 100 + 2) / 100] × 100 = 12%.[5] Nominal rates reflect unadjusted gains, while real rates subtract inflation to indicate change in purchasing power, approximated as real RoR ≈ nominal RoR - inflation rate, or more precisely (1 + nominal RoR) / (1 + inflation rate) - 1.[7] In fiat currency systems, persistent inflation erodes nominal returns; for instance, a 5% nominal return amid 3% inflation equates to roughly 2% real return, preserving less wealth than face value suggests.[8] Risk-adjusted metrics like the Sharpe ratio further refine evaluation by dividing excess return over the risk-free rate (e.g., Treasury yields) by return standard deviation: Sharpe = (portfolio return - risk-free rate) / standard deviation.[9] Higher Sharpe values indicate better compensation per unit of volatility, aiding comparisons across assets.[10] Empirical data from U.S. equities illustrate long-term patterns: from 1928 to 2023, stocks delivered a geometric average annual nominal return of approximately 10%, translating to about 7% real after inflation.[11] [12] Such averages, drawn from Ibbotson-style datasets, underpin projections but overlook fat-tailed distributions where black swan events—rare, high-impact shocks like market crashes—disrupt compounding.[13] Over-optimistic reliance on historical means ignores these causal discontinuities, as models assuming normality underestimate tail risks, potentially misleading investors on sustained performance.[13] In practice, these metrics guide portfolio allocation, with real and risk-adjusted figures emphasizing diversification to mitigate volatility beyond mean projections.[9]Tax returns and fiscal obligations
A tax return is a declaration filed with a government tax authority detailing an individual's or entity's taxable income, deductions, credits, and resulting tax liability or refund for a given fiscal year. In the United States, most individuals submit Form 1040 annually to the Internal Revenue Service (IRS), reporting wages, investments, and other income sources while claiming allowable subtractions. The standard filing deadline is April 15 following the tax year, with automatic six-month extensions available to October 15 upon request, though payments owed must still be made by April to avoid interest.[14] Failure to file when taxes are owed incurs a penalty of 5% of the unpaid amount per month or part of a month, capped at 25%, plus interest; no late-filing penalty applies if a refund is due.[15] Compliance with tax return requirements imposes substantial time and financial costs on taxpayers. IRS estimates indicate Americans spent 7.9 billion hours on federal tax filing and related activities in 2024, equivalent to an economic burden of $546 billion when valued at average wage rates.[16] For a typical Form 1040 filer, this translates to about 13 hours of preparation time and $290 in out-of-pocket expenses, such as software or professional fees.[17] These burdens stem from the complexity of rules governing itemized deductions, credits, and income categorization, which necessitate record-keeping and often professional assistance for non-simple returns. The U.S. federal income tax system is progressive, with rates escalating from 10% to 37% based on taxable income brackets, intended to impose higher marginal burdens on greater earnings.[18] Empirical data show the top 1% of earners, comprising 22.4% of adjusted gross income, shoulder 40.4% of total federal income taxes paid in 2022, yielding effective rates around 25-30% after deductions and credits.[19] However, progressive structures can distort economic incentives by reducing after-tax returns on additional effort or investment, leading to behavioral responses like reduced labor supply or shifted income forms, as evidenced by elasticities of taxable income to marginal rate changes exceeding 0.5 in high-bracket ranges.[20] High earners often mitigate effective rates through legal avoidance, such as realizing capital gains or deferring income, which underscores causal tensions between revenue goals and productivity signals. The Tax Cuts and Jobs Act of 2017 introduced simplifications to individual returns by nearly doubling the standard deduction to $12,000 for singles and $24,000 for joint filers (adjusted for inflation since), repealing personal exemptions, and expanding the child tax credit, thereby reducing itemization incentives and compliance complexity for over 90% of filers who now opt for the standard deduction.[21] These changes lowered rates across brackets and aimed to lessen distortions, though many provisions are set to expire after 2025 absent extension.[22] Proponents of flat tax alternatives argue they enhance efficiency by applying a uniform rate—often 15-20% with exemptions for low incomes—eliminating bracket creep and avoidance motives tied to progressivity thresholds, potentially boosting savings and growth without sacrificing revenue neutrality if calibrated properly.[23] At least 14 U.S. states employ flat income taxes, correlating with simpler filing and lower administrative costs relative to progressive systems.[24] Empirical comparisons indicate flat structures can moderate income inequality less aggressively than progressive ones but reduce deadweight losses from differential incentives.[25]Computing and technology
Return statement in programming
The return statement is a fundamental syntactic construct in imperative and procedural programming languages, used to exit a function or subroutine and optionally pass a computed value back to the calling code. Upon encountering a return statement, execution of the current function ceases immediately, and control resumes at the point of the original call, with the returned value substituting for the function invocation if specified. This enables value propagation, supporting reusable, modular code where functions encapsulate computations without side effects on global state. Languages distinguish between value-returning functions and void procedures, where the latter use return solely for exit without a value.[26][27] Syntax varies by language but follows a consistent pattern of keyword followed by an optional expression. In C, the form isreturn expression;, evaluating the expression and returning its value, or return; for functions declared void, as defined in the ANSI C standard. Python uses return [expression], where omitting the expression implies None, and multiple values can be returned as a tuple via comma separation. JavaScript employs return [expression];, with implicit undefined if absent, terminating the function even in arrow functions. These designs promote type safety and explicit intent, with compilers enforcing return type compatibility in statically typed languages like C and Java.[28][29][3]
The return statement emerged in early high-level languages to abstract machine-level jumps and stack operations. Fortran II, introduced by IBM in 1958, added a RETURN statement for explicit subroutine exits, building on Fortran I's indexed transfers, to support procedural control flow amid growing program complexity on IBM 704 systems. Earlier, values in function-like subprograms were set by assigning to a result variable before implicit return, but explicit statements standardized exits. ALGOL 60 (1960) refined this with block-structured functions returning via value parameters, influencing descendants like Pascal and C, which adopted keyword-based returns for clarity over assignment-to-name conventions in some predecessors.[30][31]
Practically, return statements enhance code efficiency by permitting early exits, skipping redundant computations after conditions like error detection or partial results, as in guard clauses that reduce cyclomatic complexity. In recursive algorithms, they are essential for base cases to unwind the call stack, propagating intermediate results upward; for example, a recursive factorial function returns 1 at the base (n ≤ 1) and multiplies n by the recursive call otherwise, building the product without mutable state.
Such patterns manage stack depth—typically 1-8 MB on modern systems, limiting unoptimized recursion to ~10^5 calls—avoiding overflows that halt execution, though tail-call optimization in languages like Scheme mitigates this by reusing stack frames. Standard library examples include C'scint factorial(int n) { if (n <= 1) return 1; return n * factorial(n - 1); }int factorial(int n) { if (n <= 1) return 1; return n * factorial(n - 1); }
sqrt in <math.h>, returning the square root or NaN on invalid input via early return paths, optimizing for common cases without full computation traversal. Multiple returns can clarify intent over flags, though debates persist on readability versus single-exit policies in safety-critical code.[32][33]