Difference between revisions of "Standard library"
Karl Jones (Talk | contribs) (→Description) |
Karl Jones (Talk | contribs) |
||
Line 19: | Line 19: | ||
Similarly, in Smalltalk, an anonymous function expression (a "block") constructs an instance of the library's BlockContext class. | Similarly, in Smalltalk, an anonymous function expression (a "block") constructs an instance of the library's BlockContext class. | ||
− | + | == Scheme == | |
Conversely, Scheme contains multiple coherent subsets that suffice to construct the rest of the language as library macros, and so the language designers do not even bother to say which portions of the language must be implemented as language constructs, and which must be implemented as parts of a library. | Conversely, Scheme contains multiple coherent subsets that suffice to construct the rest of the language as library macros, and so the language designers do not even bother to say which portions of the language must be implemented as language constructs, and which must be implemented as parts of a library. |
Revision as of 07:11, 7 February 2016
In computer programming, a standard library is the library made available across implementations of a programming language.
Description
These libraries are conventionally described in programming language specifications; however, contents of a language's associated library may also be determined (in part or whole) by more informal practices of a language's community.
A language's standard library is often treated as part of the language by its users, although the designers may have treated it as a separate entity.
Many language specifications define a core set that must be made available in all implementations, in addition to other portions which may be optionally implemented.
The line between a language and its libraries therefore differ from language to language.
Java
Some languages are designed so that the meanings of certain syntactic constructs cannot even be described without referring to the core library. For example, in Java, a string literal is defined as an instance of the java.lang.String class.
Smalltalk
Similarly, in Smalltalk, an anonymous function expression (a "block") constructs an instance of the library's BlockContext class.
Scheme
Conversely, Scheme contains multiple coherent subsets that suffice to construct the rest of the language as library macros, and so the language designers do not even bother to say which portions of the language must be implemented as language constructs, and which must be implemented as parts of a library.
See also
External links
- Standard library @ Wikipedia