Keyword (computer programming)
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 and its kin, a keyword is a reserved word which identifies a syntactic form. Words used in control flow constructs, such as if, then, and else are keywords. In these languages, keywords cannot also be used as the names of variables or functions.
Some languages, such as PostScript, are extremely liberal in this approach, allowing core keywords to be redefined for specific purposes.
In Common Lisp, in contrast, keywords (or keyword symbols) are a special sort of symbol, or identifier. Unlike other symbols, which usually stand for variables or functions, keywords are self-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 and many BASIC dialects, print
is a keyword. In contrast, the C and Lisp equivalents printf
and format
are functions in the standard library.
In languages with macros or lazy evaluation, control flow constructs such as if
can be implemented as macros or functions. In languages without these expressive features, they are generally keywords.