Misplaced Pages

GOSUB

Article snapshot taken from Wikipedia with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.

This is an old revision of this page, as edited by Van der Hoorn (talk | contribs) at 20:25, 16 April 2013 (Added a link). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Revision as of 20:25, 16 April 2013 by Van der Hoorn (talk | contribs) (Added a link)(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)

GOSUB is a command in many versions of the BASIC computer programming language. A GOSUB statement jumps to a line elsewhere in the program. That line and the following lines up to a RETURN are used as a simple kind of a subroutine without (sometimes with) parameters or local variables.

The GOSUB command may be used to emulate subroutines in a BASIC dialect that does not support subroutines in its syntax. GOSUB is convenient for performing the same function several times in a BASIC program without duplicating the code.

RETURN

A RETURN command resumes program flow from the point at which GOSUB was invoked.

Using GOSUB too many times, as in a loop or recursively, without corresponding RETURN statements, would typically cause a stack overflow. On the other hand, when the BASIC interpreter encounters a RETURN statement without a GOSUB it will emit a RETURN WITHOUT GOSUB error.

Computed GOSUB

A computed GOSUB statement, ON...GOSUB, exists in some BASIC dialects. The syntax of the statement is ON x GOSUB line1, line2, ... Computed GOSUB branches to one of several destinations based on the value of x. RETURN commands return program flow to the statement following ON..GOSUB.

Support

Not all BASIC implementations support GOSUB or ON..GOSUB. For example, in FreeBASIC GOSUB is considered as deprecated in favor of SUB/FUNCTION, and is disabled by default. In Visual Basic, GOSUB and ON..GOSUB were removed when VB.NET was released.

See also

References

  1. "GOSUB...RETURN Statement Details". Microsoft. 1988. Retrieved 2008-07-04.
  2. "GOSUB". FBWiki. 2008-05-08. Retrieved 2008-07-04. Gosub support is disabled by default in the -lang fblite unless the Option Gosub statement is used.


Stub icon

This programming-language-related article is a stub. You can help Misplaced Pages by expanding it.

Categories: