# Gamma Function > [Gamma][gamma-function] function.
The [gamma function][gamma-function] extends the [factorial function][@stdlib/math/base/special/factorial] to [real][real] and [complex][complex] numbers. If `n` is a positive `integer`,
Gamma function for positive integers.
Generalized to all complex numbers `z`, except for nonpositive integers, the [gamma function][gamma-function] can be expressed as an infinite product
Gamma function for all complex numbers.
where `γ ≈ 0.577216` is the [Euler–Mascheroni constant][@stdlib/constants/float64/eulergamma].
## Usage ```javascript var gamma = require( '@stdlib/math/base/special/gamma' ); ``` #### gamma( x ) Evaluates the [gamma function][gamma-function]. ```javascript var v = gamma( 4.0 ); // returns 6.0 v = gamma( -1.5 ); // returns ~2.363 v = gamma( -0.5 ); // returns ~-3.545 v = gamma( 0.5 ); // returns ~1.772 v = gamma( 0.0 ); // returns Infinity v = gamma( -0.0 ); // returns -Infinity v = gamma( NaN ); // returns NaN ```
## Examples ```javascript var linspace = require( '@stdlib/array/linspace' ); var gamma = require( '@stdlib/math/base/special/gamma' ); var x = linspace( -10.0, 10.0, 100 ); var v; var i; for ( i = 0; i < x.length; i++ ) { v = gamma( x[ i ] ); console.log( 'x: %d, f(x): %d', x[ i ], v ); } ```