Software Expression

From GM-RKB
Jump to navigation Jump to search

A Software Expression is a formal statement that attempts to abide by a programming language.



References

2015

  • (Wikipedia, 2015) ⇒ http://en.wikipedia.org/wiki/Expression_(computer_science) Retrieved:2015-2-13.
    • An expression in a programming language is a combination of explicit values, constants, variables, operators, and functions that are interpreted according to the particular rules of precedence and of association for a particular programming language, which computes and then produces (returns, in a stateful environment) another value. This process, like for mathematical expressions, is called evaluation. The value can be of various types, such as numerical, string, and logical.

      For example, 2+3 is an arithmetic and programming expression which evaluates to 5. A variable is an expression because it denotes a value in memory, so y+6 is an expression. An example of a relational expression is 4≠4, which evaluates to false. [1] [2] In C and most C-derived languages, a call to a function with a void return type is a valid expression, of type void. [3] Values of type void cannot be used, so the value of such an expression is always thrown away.

      In many programming languages a function, and hence an expression containing a function, may have side effects. An expression with side effects does not normally have the property of referential transparency. In many languages (e.g. C++), expressions may be ended with a semicolon (;) to turn the expression into an expression statement. This asks the implementation to evaluate the expression for its side-effects only, and disregard the result of the expression.

  1. Javascript expressions, Mozilla Accessed July 6, 2009
  2. Programming in C Accessed July 6, 2009
  3. ISO/IEC 9899:1999 section 6.3.2.2, accessed August 31, 2009


  • (Wikipedia, 2015) ⇒ http://en.wikipedia.org/wiki/Statement_(computer_science)#Expressions Retrieved:2015-8-17.
    • In most languages, statements contrast with expressions in that statements do not return results and are executed solely for their side effects, while expressions always return a result and often do not have side effects at all. Among imperative programming languages, Algol 68 is one of the few in which a statement can return a result. In languages that mix imperative and functional styles, such as the Lisp family, the distinction between expressions and statements is not made: even expressions executed in sequential contexts solely for their side effects and whose return values are not used are considered 'expressions'. In purely functional programming, there are no statements; everything is an expression.