Content deleted Content added
m added information about keywords in editors |
No edit summary |
||
Line 1:
In [[computer programming]], a '''keyword''' is a [[word]] or [[identifier]] that has a particular meaning to the [[programming language]]. The meaning of keywords — and, indeed, the meaning of the notion of ''keyword'' — differs widely from language to language.
In many languages, such as [[C (programming language)|C]] and similar environments like [[C++]], a ''keyword'' is a [[reserved word]] which identifies a syntactic form. Words used in [[control flow]] constructs, such as <tt>if</tt>, <
Some languages, such as [[PostScript]], are extremely liberal in this approach, allowing core keywords to be redefined for specific purposes.
Line 7:
In [[Common Lisp]], the term "keyword" (or "keyword symbol") is used for a special sort of symbol, or identifier. Unlike other symbols, which usually stand for variables or functions, keywords are self-[[Lisp (programming language)#Self-evaluating forms and quoting|quoting]] and evaluate to themselves. Keywords are usually used to label named arguments to functions, and to represent symbolic values.
Languages vary as to what is provided as a keyword and what is a [[library routine]]. Some languages, for instance, provide keywords for input/output operations whereas in others these are library routines. In [[Python (programming language)|Python]] (versions earlier than 3.0) and many [[BASIC]] dialects, <code>print</code> is a keyword. In contrast, the C and Lisp equivalents <code>printf</code> and <code>format</code> are functions in the standard library.
Typically, when a programmer attempts to use a keyword for a variable or function name, a compilation error will be triggered. In most modern editors, the keywords are automatically set to have a particular text colour to remind or inform the programmers that they are keywords.
Line 13:
In languages with [[macro (computer science)|macros]] or [[lazy evaluation]], control flow constructs such as <code>if</code> can be implemented as macros or functions. In languages without these expressive features, they are generally keywords.
== See also ==
* [[Java keywords]].
{{comp-sci-stub}}
|