If you are not sure if the website you would like to visit is secure, you can verify it here. Enter the website address of the page and see parts of its content and the thumbnail images on this site. None (if any) dangerous scripts on the referenced page will be executed. Additionally, if the selected site contains subpages, you can verify it (review) in batches containing 5 pages.
favicon.ico: web.archive.org/web/20221014160048/https://en.wikipedia.org/wiki/Subroutine - Function (computer programming.

site address: web.archive.org/web/20221012095446/https://en.wikipedia.org/wiki/Subroutine redirected to: web.archive.org/web/20221014160048/https://en.wikipedia.org/wiki/Subroutine

site title: Function (computer programming) - Wikipedia

Our opinion (on Saturday 26 September 2026 11:47:44 UTC):

GREEN status (no comments) - no comments
After content analysis of this website we propose the following hashtags:



Meta tags:

Headings (most frequently used words):

edit, function, basic, language, support, return, jump, and, navigation, tools, computer, programming, contents, main, concepts, terminology, advantages, disadvantages, history, libraries, by, indirect, to, call, stack, examples, local, variables, recursion, reentrancy, overloading, closures, conventions, codes, optimization, of, calls, see, also, references, menu, delayed, stacking, dialects, pl, python, inlining, personal, namespaces, views, search, contribute, print, export, languages, microsoft, small, visual, classic,

Text of the page (most frequently used words):
the (425), #function (138), and (136), call (75), that (75), return (74), for (72), functions (64), procedure (46), with (45), value (42), this (40), #programming (40), from (36), stack (36), called (36), languages (35), are (33), may (32), edit (31), not (31), code (31), program (30), can (29), which (27), address (27), its (26), have (26), such (26), use (25), was (25), calls (25), parameters (25), used (25), when (24), other (24), subprogram (23), some (23), each (22), one (22), example (21), instruction (21), different (20), variables (19), articles (17), calling (17), memory (17), into (16), would (16), passed (16), number (16), same (16), main (15), all (15), support (15), language (14), computer (14), programs (14), only (14), many (14), name (14), jump (14), wikipedia (13), more (13), could (13), will (13), also (13), but (13), needed (13), location (13), values (13), data (13), private (13), returns (13), then (12), after (12), does (12), arguments (12), execution (12), result (12), parameter (12), variable (12), mysub (12), basic (11), argument (11), instructions (11), subroutine (10), computers (10), were (10), usually (10), task (10), they (10), another (10), recursive (10), method (9), overhead (9), body (9), side (9), since (9), passing (9), branch (9), local (9), algol (9), any (9), array (9), statements (8), subroutines (8), retrieved (8), computing (8), often (8), ibm (8), these (8), area (8), like (8), register (8), information (7), needing (7), references (7), 2013 (7), microsoft (7), isbn (7), turing (7), machine (7), subprograms (7), allows (7), effects (7), must (7), very (7), object (7), double (7), activation (7), even (7), within (7), termed (7), most (7), early (7), citation (7), next (7), namely (7), time (7), sequence (7), purpose (7), print (6), special (6), here (6), examples (6), unsourced (6), libraries (6), types (6), january (6), sub (6), system (6), both (6), back (6), however (6), contains (6), procedures (6), two (6), first (6), table (6), during (6), between (6), their (6), instead (6), approach (6), mechanism (6), has (6), might (6), int (6), complex (6), separate (6), without (6), ada (6), provide (6), fortran (6), space (6), typically (6), various (6), reference (6), whose (6), indirect (6), had (6), about (5), available (5), terms (5), page (5), article (5), february (5), control (5), small (5), free (5), useful (5), see (5), eniac (5), before (5), 1945 (5), automatic (5), alan (5), john (5), machines (5), set (5), compiler (5), there (5), changed (5), includes (5), processor (5), registers (5), frame (5), multiple (5), through (5), should (5), generally (5), specified (5), entry (5), float (5), programmer (5), default (5), include (5), defined (5), store (5), them (5), record (5), nested (5), recursion (5), line (5), end (5), intvalue (5), function3 (5), function2 (5), module (5), accessible (5), actual (5), addresses (5), save (5), additional (4), pdf (4), file (4), what (4), tools (4), contents (4), clarification (4), november (4), source (4), python (4), com (4), assembly (4), pdp (4), coding (4), problems (4), library (4), addison (4), wesley (4), type (4), mauchly (4), functional (4), overloading (4), branching (4), inlining (4), because (4), results (4), effect (4), indeed (4), while (4), significant (4), certain (4), where (4), 360 (4), need (4), integer (4), placed (4), accept (4), programmers (4), perform (4), conventions (4), closures (4), declare (4), generic (4), define (4), trace (4), constructor (4), std (4), sometimes (4), reals (4), names (4), reentrant (4), similar (4), pascal (4), modern (4), supported (4), way (4), structure (4), did (4), 1960s (4), copy (4), declared (4), find (4), stored (4), change_sign (4), general (4), function4 (4), corresponding (4), part (4), function1 (4), class (4), project (4), visual (4), uses (4), modifying (4), cost (4), implemented (4), convention (4), nesting (4), unit (4), using (3), site (3), 2022 (3), help (3), random (3), navigation (3), history (3), identifiers (3), 2021 (3), description (3), constructs (3), https (3), org (3), index (3), states (3), national (3), meant (3), september (3), series (3), mainline (3), implementations (3), december (3), doi (3), 1946 (3), proposals (3), engine (3), ace (3), 978 (3), press (3), structured (3), algorithms (3), oxford (3), university (3), wheeler (3), preparation (3), digital (3), definitions (3), input (3), evaluation (3), context (3), unless (3), expression (3), whether (3), those (3), compilers (3), including (3), caller (3), saving (3), oriented (3), returned (3), designed (3), direct (3), extra (3), further (3), improving (3), conditions (3), done (3), standard (3), exceptional (3), global (3), than (3), makes (3), environment (3), implementation (3), fixed (3), writing (3), written (3), supports (3), structures (3), threaded (3), hardware (3), fib (3), itself (3), means (3), common (3), numbers (3), make (3), scratch (3), world (3), keyword (3), bounds (3), string (3), byref (3), assigned (3), strarray (3), byval (3), optional (3), indicates (3), outside (3), given (3), classic (3), dialects (3), void (3), needs (3), increased (3), architectures (3), worked (3), allowed (3), levels (3), jsb (3), coded (3), except (3), tape (3), paper (3), assemblers (3), separately (3), arbitrarily (3), deep (3), idea (3), places (3), large (3), out (3), advantages (3), concepts (3), mathematical (3), syntax (3), routine (3), objects (3), statement (2), developers (2), view (2), contact (2), privacy (2), policy (2), under (2), registered (2), october (2), links (2), simple (2), english (2), wikidata (2), pages (2), upload (2), changes (2), learn (2), search (2), talk (2), account (2), categories (2), 2009 (2), short (2), united (2), august (2), arm (2), prentice (2), hall (2), software (2), our (2), him (2), bad (2), electronic (2), isaacson (2), walter (2), 2014 (2), archived (2), 2018 (2), original (2), 269 (2), brian (2), presented (2), executive (2), committee (2), development (2), mathematics (2), division (2), edition (2), 201 (2), npl (2), encyclopedia (2), open (2), dictionary (2), wilkes (2), gill (2), 1952 (2), acm (2), edvac (2), science (2), words (2), event (2), coroutines (2), modular (2), look (2), avoid (2), size (2), inline (2), obvious (2), optimizations (2), applied (2), moreover (2), again (2), second (2), purely (2), imperative (2), storage (2), etc (2), optimization (2), bal (2), storing (2), error (2), conditional (2), write (2), normal (2), codes (2), coupling (2), increasing (2), readability (2), been (2), developed (2), naming (2), together (2), feature (2), lisp (2), introduced (2), depending (2), closure (2), gen_name (2), binary (2), flame (2), pathname (2), otherwise (2), screen (2), speed (2), color (2), endl (2), circle_area (2), cout (2), rectangle_area (2), profiles (2), said (2), case (2), positive (2), negative (2), typed (2), stacks (2), records (2), multi (2), executed (2), already (2), progress (2), threads (2), callable (2), outer (2), access (2), scope (2), every (2), modify (2), suspended (2), initially (2), well (2), late (2), break (2), new (2), pass (2), reentrancy (2), simple_function (2), hello (2), def (2), either (2), start (2), following (2), followed (2), array1 (2), array2 (2), arrays (2), change (2), modifies (2), variable_to_increment (2), converts (2), initial (2), letter (2), day (2), week (2), num_day (2), stand (2), alone (2), visible (2), instance (2), friend (2), public (2), associated (2), being (2), methods (2), content (2), endsub (2), pointer_to_var (2), selection (2), char (2), making (2), reduce (2), leaf (2), delayed (2), stacking (2), based (2), important (2), moment (2), ways (2), assembled (2), still (2), active (2), earliest (2), latter (2), design (2), implement (2), internal (2), recalculation (2), limited (2), easily (2), operand (2), branched (2), jmp (2), 2100 (2), execute (2), predefined (2), remove (2), provided (2), loaded (2), piece (2), punched (2), procedural (2), explicitly (2), offer (2), sequences (2), microprocessors (2), single (2), saved (2), counter (2), intel (2), she (2), particular (2), complicated (2), 1947 (2), symposium (2), harvard (2), prologue (2), epilogue (2), disadvantages (2), obtain (2), decomposing (2), block (2), distinguish (2), invoked (2), sqrt (2), expressions (2), specify (2), specific (2), doesn (2), compute (2), terminology (2), success (2), vague (2), constant (2), macro (2), replace (2), copied (2), delphi (2), simula (2), cpl (2), modula (2), oberon (2), others (2), formal (2), concept (2), several (2), packaged (2), sources (2), citations (2), web (2), sep (2), cookie, statistics, mobile, disclaimers, text, apply, you, agree, trademark, non, profit, organization, wikimedia, foundation, inc, creative, commons, attribution, sharealike, license, last, edited, utc, tiếng, việt, українська, türkçe, ไทย, tagalog, suomi, srpskohrvatski, српскохрватски, српски, srpski, slovenščina, slovenčina, русский, português, polski, олык, марий, norsk, bokmål, 日本語, nederlands, magyar, lombard, kiswahili, қазақша, עברית, íslenska, bahasa, indonesia, hrvatski, 한국어, français, فارسی, esperanto, español, ελληνικά, eesti, deutsch, dansk, čeština, català, bosanski, български, বাংলা, azərbaycanca, العربية, printable, version, download, export, item, cite, permanent, link, related, recent, community, portal, contribute, donate, current, events, read, views, namespaces, log, create, contributions, logged, personal, menu, hidden, lccn, j9u, gnd, june, 2011, 2015, 2008, dmy, dates, april, holism, php, title, function_, computer_programming, oldid, 1113978195, israel, germany, authority, flow, documentation, www, smallbasic, msdn, 2019, docs, x64, usage, infocenter, center, frank, thomas, 1983, 195, supply, assembling, clerk, copies, presenting, tell, 2016, july, 9780134917047, introduction, 443, section, why, reputation, debunking, expensive, myth, considered, harmful, memo, guy, lewis, steele, planning, instrument, vol, 163, relevant, ias, edu, files, pdfs, ecp, planningcodingof0103inst, fortune, women, 1977, 1975, 279, 1093, comjnl, journal, doran, robert, william, carpenter, edward, physical, laboratory, great, britain, march, mathison, stroustrup, bjarne, 307, 321, 56384, fourth, wilson, leslie, 2001, 140, 71012, comparative, third, dahl, dijkstra, hoare, 1972, academic, 200550, 1997, 89683, art, volume, fundamental, donald, knuth, reprinted, 2005, 383, 856593, copeland, report, submitted, dainith, 2004, 1951, 235, 1145, 609784, 609816, proceedings, meeting, pittsburgh, routines, programmes, 1982, randell, springer, 1007, 642, 61812, 3_31, origins, subrata, dasgupta, 155, 930943, began, babbage, genesis, 2007, 2012, voluntary, voting, guidelines, meanings, election, assistance, commission, activities, asynchronous, response, interrupt, handler, cqs, command, query, separation, protected, operator, transclusion, strategy, builtin, wiktionary, eliminate, versus, effectively, taking, inserted, optimized, increase, optimize, expansion, seemingly, cannot, twice, fetched, determining, difficult, virtue, safe, typical, assume, worst, rice, theorem, undecidable, pure, runtime, restoring, allocating, reclaiming, implies, testing, handling, raise, intensively, dynamic, dispatch, exceptions, subrtn01, r14, reg, appropriate, instr, good, invalid, unexpected, condition, expected, located, immediately, tests, efficiency, besides, inform, occurred, standards, encodes, proponents, modularizing, advocate, minimal, dependency, pieces, deemed, unwise, advocates, perspective, adds, tight, necessary, advice, affect, refactor, suggest, split, argue, key, components, roles, remain, distinct, maintenance, wide, pertaining, adopted, inquiry, substitute, noun, adjective, verb, captured, created, notable, serve, mccarthy, matches, none, choices, attribute, construct, directions, path, points, plethora, colour, starting, ordinates, wanted, able, accepts, turn, centered, origin, coder, choosing, circle, rectangle, iostream, overloaded, desirable, operating, square, root, operate, matrices, algorithm, three, convenience, having, remember, subtype, real, strongly, fully, lazy, properly, situations, fear, interfering, slightly, less, restrictive, requirement, application, shared, quasi, transaction, processing, cics, parent, inner, accomplished, display, almost, invariably, sets, fresh, concern, executions, accumulate, formed, consisting, fact, virtually, ubiquitous, commonly, frames, statically, allocated, nature, sites, causing, suspend, occurs, simplify, down, desires, stay, areas, fibonacci, static, amount, hold, intermediate, tells, finishes, form, continue, indented, prints, follows, providing, lengths, eliminates, passes, trivial, sign, element, dimensional, descriptor, dim, throughout, controller, modules, option, unspecified, designation, determines, accessed, variant, subs, above, ends, writeline, textwindow, begins, classified, indicate, note, member, objectionable, themselves, try, delay, until, really, transfer, disadvantage, matching, incrementing, decrementing, pointer, checking, accessing, relative, absolute, realized, complexity, overflow, advantage, gets, motivation, precious, scheme, reserve, currently, haven, yet, uncommon, thousands, handful, amounts, viewed, simplest, management, designs, notably, mainly, loop, counters, former, indirectly, directly, forth, contiguous, arbitrary, choice, bottom, lowest, highest, grow, forwards, backwards, chose, ordinary, risc, vliw, traditional, included, long, word, reduced, creates, top, deleted, incidentally, 1980s, discover, dependencies, spreadsheet, reserved, cell, natural, order, tree, walk, reserving, circular, lotus, locations, allow, executing, nop, systems, target, actually, begin, balr, advance, combined, thereby, minimizing, significantly, completed, designers, eventually, containing, self, spliced, originally, literal, sense, kept, indexed, collections, tapes, card, decks, collective, cards, cumbersome, proved, thing, scarce, resource, savings, user, released, 1958, separated, interspersed, generate, much, sophisticated, linked, macros, dedicated, few, mid, 1970, pushing, 1130, univac, pic, microcontrollers, 8008, 4004, 1620, wrote, dated, 1948, discussing, von, neumann, goldstine, closely, team, war, calculate, missile, trajectories, kay, mcnulty, designate, multiplication, list, problem, brief, indicated, bit, possible, logical, characteristics, essential, evolve, placing, known, notes, scale, calculating, machinery, joint, sponsorship, bureau, ordnance, navy, discusses, serial, parallel, operation, suggesting, bury, unbury, returning, konrad, zuse, existed, arithmetic, planned, ahead, relatively, little, greatly, over, years, required, rca, 1802, manchester, baby, requires, exit, minimum, housekeeping, compared, invoking, imposes, computational, involved, perhaps, debugging, severely, impaired, traceability, replacing, serves, describe, concise, readable, reused, descriptive, users, hiding, details, dividing, among, stages, enabling, across, reuse, reducing, duplicate, simpler, steps, along, breaking, translate, according, compiled, confused, strictly, always, repeatedly, cause, haskell, explicit, normally, embedded, behave, syntactically, gosub, package, handle, encountered, dispose, identify, temporary, assign, identifier, delimit, high, level, primary, computations, meaningful, chunks, computed, output, entirely, determined, essentially, absence, clause, dynamically, choose, matrix, determinant, logarithm, null, core, answer, yes, question, predicate, predicates, primarily, determine, failure, logic, boolean, valued, divide, conquer, induction, recursively, reading, creating, halting, delaying, pseudo, widespread, characteristic, peripheral, device, nonassignable, treated, scala, unevaluated, evaluate, swift, selectable, java, evaluated, expects, provides, executable, basically, compiling, powerful, tool, judicious, substantially, developing, maintaining, quality, reliability, collected, sharing, trading, discipline, attached, classes, conceived, his, work, recorded, credited, invention, contrasted, discussed, going, far, invent, closed, stanley, david, maurice, started, times, once, technically, nomenclature, varies, umbrella, term, performs, wherever, performed, how, template, message, please, material, challenged, removed, jstor, scholar, books, newspapers, news, adding, reliable, improve, verification, redirected, wayback, http, archive, 20221014160048, wiki, timestamps, capture, fail, 2023, nov, oct, dec, 2003, 2026, 976, captures,


Text of the page (random words):
lly a similar method was used by lotus 1 2 3 in the early 1980s to discover the recalculation dependencies in a spreadsheet namely a location was reserved in each cell to store the return address since circular references are not allowed for natural recalculation order this allows a tree walk without reserving space for a stack in memory which was very limited on small computers such as the ibm pc call stack edit most modern implementations of a function call use a call stack a special case of the stack data structure to implement function calls and returns each procedure call creates a new entry called a stack frame at the top of the stack when the procedure returns its stack frame is deleted from the stack and its space may be used for other procedure calls each stack frame contains the private data of the corresponding call which typically includes the procedure s parameters and internal variables and the return address the call sequence can be implemented by a sequence of ordinary instructions an approach still used in reduced instruction set computing risc and very long instruction word vliw architectures but many traditional machines designed since the late 1960s have included special instructions for that purpose the call stack is usually implemented as a contiguous area of memory it is an arbitrary design choice whether the bottom of the stack is the lowest or highest address within this area so that the stack may grow forwards or backwards in memory however many architectures chose the latter citation needed some designs notably some forth implementations used two separate stacks one mainly for control information like return addresses and loop counters and the other for data the former was or worked like a call stack and was only indirectly accessible to the programmer through other language constructs while the latter was more directly accessible when stack based procedure calls were first introduced an important motivation was to save precious memory citation needed with this scheme the compiler does not have to reserve separate space in memory for the private data parameters return address and local variables of each procedure at any moment the stack contains only the private data of the calls that are currently active namely which have been called but haven t returned yet because of the ways in which programs were usually assembled from libraries it was and still is not uncommon to find programs that include thousands of functions of which only a handful are active at any given moment citation needed for such programs the call stack mechanism could save significant amounts of memory indeed the call stack mechanism can be viewed as the earliest and simplest method for automatic memory management however another advantage of the call stack method is that it allows recursive function calls since each nested call to the same procedure gets a separate instance of its private data delayed stacking edit one disadvantage of the call stack mechanism is the increased cost of a procedure call and its matching return clarification needed the extra cost includes incrementing and decrementing the stack pointer and in some architectures checking for stack overflow and accessing the local variables and parameters by frame relative addresses instead of absolute addresses the cost may be realized in increased execution time or increased processor complexity or both this overhead is most obvious and objectionable in leaf procedures or leaf functions which return without making any procedure calls themselves 18 19 20 to reduce that overhead many modern compilers try to delay the use of a call stack until it is really needed citation needed for example the call of a procedure p may store the return address and parameters of the called procedure in certain processor registers and transfer control to the procedure s body by a simple jump if the procedure p returns without making any other call the call stack is not used at all if p needs to call another procedure q it will then use the call stack to save the contents of any registers such as the return address that will be needed after q returns examples edit c and c edit in the c and c programming languages subprograms are termed functions further classified as member functions when associated with a class or free functions 21 when not these languages use the special keyword void to indicate that a function does not return any value note that c c functions can have side effects including modifying any variables whose addresses are passed as parameters examples void function1 some code the function does not return a value and has to be called as a stand alone function e g function1 int function2 return 5 this function returns a result the number 5 and the call can be part of an expression e g x function2 char function3 int number char selection s m t w t f s return selection number this function converts a number between 0 and 6 into the initial letter of the corresponding day of the week namely 0 to s 1 to m 6 to s the result of calling it might be assigned to a variable e g num_day function3 number void function4 int pointer_to_var pointer_to_var this function does not return a value but modifies the variable whose address is passed as the parameter it would be called with function4 variable_to_increment basic dialects edit microsoft small basic edit example calls the function sub example begins the function textwindow writeline this is an example of a function in microsoft small basic what the function does endsub ends the function in the example above example calls the function 22 to define the actual function the sub keyword must be used with the function name following sub after content has followed endsub must be typed visual basic classic edit in the visual basic classic language subprograms are termed functions or subs or methods when associated with a class visual basic 6 uses various terms called types to define what is being passed as a parameter by default an unspecified variable is registered as a variant type and can be passed as byref default or byval also when a function or sub is declared it is given a public private or friend designation which determines whether it can be accessed outside the module or project that it was declared in by value byval a way of passing the value of an argument to a procedure by passing a copy of the value instead of passing the address as a result the variable s actual value can t be changed by the procedure to which it is passed by reference byref a way of passing the value of an argument to a procedure by passing an address of the variable instead of passing a copy of its value this allows the procedure to access the actual variable as a result the variable s actual value can be changed by the procedure to which it is passed unless otherwise specified arguments are passed by reference public optional indicates that the function procedure is accessible to all other procedures in all modules if used in a module that contains an option private the procedure is not available outside the project private optional indicates that the function procedure is accessible only to other procedures in the module where it is declared friend optional used only in a class module indicates that the function procedure is visible throughout the project but not visible to a controller of an instance of an object private function function1 some code here end function the function does not return a value and has to be called as a stand alone function e g function1 private function function2 as integer function2 5 end function this function returns a result the number 5 and the call can be part of an expression e g x function2 private function function3 byval intvalue as integer as string dim strarray 6 as string strarray array m t w t f s s function3 strarray intvalue end function this function converts a number between 0 and 6 into the initial letter of the corresponding day of the week namely 0 to m 1 to t 6 to s the result of calling it might be assigned to a variable e g num_day function3 number private function function4 byref intvalue as integer intvalue intvalue 1 end function this function does not return a value but modifies the variable whose address is passed as the parameter it would be called with function4 variable_to_increment pl i edit in pl i a called procedure may be passed a descriptor providing information about the argument such as string lengths and array bounds this allows the procedure to be more general and eliminates the need for the programmer to pass such information by default pl i passes arguments by reference a trivial function to change the sign of each element of a two dimensional array might look like change_sign procedure array declare array float array array end change_sign this could be called with various arrays as follows first array bounds from 5 to 10 and 3 to 9 declare array1 5 10 3 9 float second array bounds from 1 to 16 and 1 to 16 declare array2 16 16 float call change_sign array1 call change_sign array2 python edit in python the keyword def is used to define a function the statements that form the body of the function must either continue on the same line or start on the next line and be indented 23 the following example program prints hello world followed by wikipedia on the next line def simple_function print hello world print wikipedia simple_function local variables recursion and reentrancy edit a subprogram may find it useful to make use of a certain amount of scratch space that is memory used during the execution of that subprogram to hold intermediate results variables stored in this scratch space are termed local variables and the scratch space is termed an activation record an activation record typically has a return address that tells it where to pass control back to when the subprogram finishes a subprogram may have any number and nature of call sites if recursion is supported a subprogram may even call itself causing its execution to suspend while another nested execution of the same subprogram occurs recursion is a useful means to simplify some complex algorithms and break down complex problems recursive languages generally provide a new copy of local variables on each call if the programmer desires the value of local variables to stay the same between calls they can be declared static in some languages or global values or common areas can be used here is an example of a recursive function in c c to find fibonacci numbers int fib int n if n 1 return n return fib n 1 fib n 2 early languages like fortran did not initially support recursion because variables were statically allocated as well as the location for the return address most computers before the late 1960s such as the pdp 8 did not have support for hardware stack registers citation needed modern languages after algol such as pl i and c almost invariably use a stack usually supported by most modern computer instruction sets to provide a fresh activation record for every execution of a subprogram that way the nested execution is free to modify its local variables without concern for the effect on other suspended executions in progress as nested calls accumulate a call stack structure is formed consisting of one activation record for each suspended subprogram in fact this stack structure is virtually ubiquitous and so activation records are commonly termed stack frames some languages such as pascal pl i and ada also support nested functions which are functions callable only within the scope of an outer parent function inner functions have access to the local variables of the outer function that called them this is accomplished by storing extra context information within the activation record also termed a display if a subprogram can be executed properly even when another execution of the same subprogram is already in progress that subprogram is said to be reentrant a recursive subprogram must be reentrant reentrant subprograms are also useful in multi threaded situations since multiple threads can call the same subprogram without fear of interfering with each other in the ibm cics transaction processing system quasi reentrant was a slightly less restrictive but similar requirement for application programs that were shared by many threads in a multi threaded environment there is generally more than one stack an environment that fully supports coroutines or lazy evaluation may use data structures other than stacks to store their activation records overloading edit in strongly typed languages it is sometimes desirable to have a number of functions with the same name but operating on different types of data or with different parameter profiles for example a square root function might be defined to operate on reals complex values or matrices the algorithm to be used in each case is different and the return result may be different by writing three separate functions with the same name the programmer has the convenience of not having to remember different names for each type of data further if a subtype can be defined for the reals to separate positive and negative reals two functions can be written for the reals one to return a real when the parameter is positive and another to return a complex value when the parameter is negative in object oriented programming when a series of functions with the same name can accept different parameter profiles or parameters of different types each of the functions is said to be overloaded here is an example of function overloading in c include iostream double area double h double w return h w double area double r return r r 3 14 int main double rectangle_area area 3 4 double circle_area area 5 std cout area of a rectangle is rectangle_area std endl std cout area of a circle is circle_area std endl in this code there are two functions of the same name but they have different parameters as another example a function might construct an object that will accept directions and trace its path to these points on screen there are a plethora of parameters that could be passed in to the constructor colour of the trace starting x and y co ordinates trace speed if the programmer wanted the constructor to be able to accept only the color parameter then he could call another constructor that accepts only color which in turn calls the constructor with all the parameters passing in a set of default values for all the other parameters x and y would generally be centered on screen or placed at the origin and the speed would be set to another value of the coder s choosing pl i has the generic attribute to define a generic name for a set of entry references called with different types of arguments example declare gen_name generic name when fixed binary flame when float pathname otherwise multiple argument definitions may be specified for each entry a call to gen_name will result in a call to name when the argument is fixed...
Thumbnail images (randomly selected): * Images may be subject to copyright.GREEN status (no comments)

Verified site has: 371 subpage(s). Do you want to verify them? Verify pages:

1-5 6-10 11-15 16-20 21-25 26-30 31-35 36-40 41-45 46-50
51-55 56-60 61-65 66-70 71-75 76-80 81-85 86-90 91-95 96-100
101-105 106-110 111-115 116-120 121-125 126-130 131-135 136-140 141-145 146-150
151-155 156-160 161-165 166-170 171-175 176-180 181-185 186-190 191-195 196-200
201-205 206-210 211-215 216-220 221-225 226-230 231-235 236-240 241-245 246-250
251-255 256-260 261-265 266-270 271-275 276-280 281-285 286-290 291-295 296-300
301-305 306-310 311-315 316-320 321-325 326-330 331-335 336-340 341-345 346-350
351-355 356-360 361-365 366-370 371-371


The site also has references to the 2 subdomain(s)

  archive.org  Verify   help.archive.org  Verify


Top 50 hastags from of all verified websites.

Supplementary Information (add-on for SEO geeks)*- See more on header.verify-www.com

Header

HTTP/1.1 302 FOUND
Server nginx
Date Sat, 26 Sep 2026 11:47:43 GMT
Content-Type text/plain; charset=utf-8
Content-Length 0
Connection close
x-archive-redirect-reason found capture at 20221014160048
location htt???/web.archive.org/web/20221014160048/htt????/en.wikipedia.org/wiki/Subroutine
server-timing captures_list;dur=0.650176, exclusion.robots;dur=0.050131, exclusion.robots.policy;dur=0.037039, esindex;dur=0.008695, cdx.remote;dur=10.207801, LoadShardBlock;dur=47.655002, PetaboxLoader3.datanode;dur=36.025072
x-app-server wwwb-app245-dc8
x-ts 302
x-tr 106
server-timing TR;dur=0,Tw;dur=0,Tc;dur=1
set-cookie wb-p-SERVER=wwwb-app245; path=/
X-location All
X-AS 16276
X-RL 0
X-NA 0
X-Page-Cache MISS
Server-Timing MISS
X-NID OVH SAS
Referrer-Policy no-referrer-when-downgrade
Permissions-Policy interest-cohort=()
X-sd 0
HTTP/1.1 200 OK
Server nginx
Date Sat, 26 Sep 2026 11:47:45 GMT
Content-Type text/html; charset=UTF-8
Transfer-Encoding chunked
Connection close
x-archive-orig-date Wed, 12 Oct 2022 19:31:42 GMT
x-archive-orig-server mw2314.codfw.wmnet
x-archive-orig-x-content-type-options nosniff
x-archive-orig-content-language en
x-archive-orig-vary Accept-Encoding,Cookie,Authorization
x-archive-orig-last-modified Mon, 10 Oct 2022 16:40:40 GMT
x-archive-orig-age 160146
x-archive-orig-x-cache cp2041 hit, cp2037 hit/1
x-archive-orig-x-cache-status hit-front
x-archive-orig-server-timing cache;desc= hit-front , host;desc= cp2037
x-archive-orig-strict-transport-security max-age=106384710; includeSubDomains; preload
x-archive-orig-report-to group : wm_nel , max_age : 86400, endpoints : [ url : htt????/intake-logging.wikimedia.org/v1/events?stream=w3c.reportingapi.network_error&schema_uri=/w3c/reportingapi/network_error/1.0.0 ]
x-archive-orig-nel report_to : wm_nel , max_age : 86400, failure_fraction : 0.05, success_fraction : 0.0
x-archive-orig-set-cookie WMF-Last-Access=14-Oct-2022;Path=/;HttpOnly;secure;Expires=Tue, 15 Nov 2022 12:00:00 GMT
x-archive-orig-set-cookie WMF-Last-Access-Global=14-Oct-2022;Path=/;Domain=.wikipedia.org;HttpOnly;secure;Expires=Tue, 15 Nov 2022 12:00:00 GMT
x-archive-orig-accept-ch Sec-CH-UA-Arch,Sec-CH-UA-Bitness,Sec-CH-UA-Full-Version-List,Sec-CH-UA-Model,Sec-CH-UA-Platform-Version
x-archive-orig-permissions-policy interest-cohort=(),ch-ua-arch=(self intake-analytics.wikimedia.org ),ch-ua-bitness=(self intake-analytics.wikimedia.org ),ch-ua-full-version-list=(self intake-analytics.wikimedia.org ),ch-ua-model=(self intake-analytics.wikimedia.org ),ch-ua-platform-version=(self intake-analytics.wikimedia.org )
x-archive-orig-x-client-ip 207.241.235.133
x-archive-orig-cache-control private, s-maxage=0, max-age=0, must-revalidate
x-archive-orig-set-cookie GeoIP=US:NM:Albuquerque:35.15:-106.58:v4; Path=/; secure; Domain=.wikipedia.org
x-archive-orig-accept-ranges bytes
x-archive-orig-content-length 39997
x-archive-orig-connection close
x-archive-guessed-content-type text/html
x-archive-guessed-charset utf-8
x-archive-orig-content-encoding gzip
memento-datetime Fri, 14 Oct 2022 16:00:48 GMT
link <htt????/en.wikipedia.org/wiki/Subroutine>; rel= original , <htt???/web.archive.org/web/timemap/link/htt????/en.wikipedia.org/wiki/Subroutine>; rel= timemap ; type= application/link-format , <htt???/web.archive.org/web/htt????/en.wikipedia.org/wiki/Subroutine>; rel= timegate , <htt???/web.archive.org/web/20031218170309/htt???/en.wikipedia.org:80/wiki/Subroutine>; rel= first memento ; datetime= Thu, 18 Dec 2003 17:03:09 GMT , <htt???/web.archive.org/web/20220930225121/htt????/en.wikipedia.org/wiki/Subroutine>; rel= prev memento ; datetime= Fri, 30 Sep 2022 22:51:21 GMT , <htt???/web.archive.org/web/20221014160048/htt????/en.wikipedia.org/wiki/Subroutine>; rel= memento ; datetime= Fri, 14 Oct 2022 16:00:48 GMT , <htt???/web.archive.org/web/20221019213921/htt????/en.wikipedia.org/wiki/Subroutine>; rel= next memento ; datetime= Wed, 19 Oct 2022 21:39:21 GMT , <htt???/web.archive.org/web/20260917225119/htt????/en.wikipedia.org/wiki/Subroutine>; rel= last memento ; datetime= Thu, 17 Sep 2026 22:51:19 GMT
content-security-policy default-src self unsafe-eval unsafe-inline data: blob: archive.org web.archive.org web-static.archive.org wayback-api.archive.org athena.archive.org analytics.archive.org pragma.archivelab.org wwwb-events.archive.org
x-archive-src SPNOUTLINKS-20221014152621-crawl900/SPNOUTLINKS-20221014155912-00254.warc.gz
server-timing captures_list;dur=0.769932, exclusion.robots;dur=0.059514, exclusion.robots.policy;dur=0.043922, esindex;dur=0.013776, cdx.remote;dur=47.866459, LoadShardBlock;dur=52.141531, PetaboxLoader3.datanode;dur=68.776291, load_resource;dur=559.987583, PetaboxLoader3.resolve;dur=511.953324, nav;dur=0.343846
x-app-server wwwb-app246-dc8
x-ts 200
x-tr 909
server-timing TR;dur=0,Tw;dur=0,Tc;dur=1
set-cookie wb-p-SERVER=wwwb-app246; path=/
X-location All
X-AS 16276
X-RL 0
X-NA 0
X-Page-Cache MISS
Server-Timing MISS
X-NID OVH SAS
Referrer-Policy no-referrer-when-downgrade
Permissions-Policy interest-cohort=()
X-sd 0
Content-Encoding gzip

Meta Tags

title="Function (computer programming) - Wikipedia"
charset="UTF-8"
name="ResourceLoaderDynamicStyles" content=""
name="generator" content="MediaWiki 1.40.0-wmf.4"
name="referrer" content="origin"
name="referrer" content="origin-when-crossorigin"
name="referrer" content="origin-when-cross-origin"
name="format-detection" content="telephone=no"
name="viewport" content="width=1000"
property="og:title" content="Function (computer programming) - Wikipedia"
property="og:type" content="website"

Load Info

page size52023
load time (s)1.916202
redirect count1
speed download27151
server IP 207.241.237.3
* all occurrences of the string "http://" have been changed to "htt???/"