Concatenative-programming languages are those in which function composition is expressed as juxtaposition, are point-free, and all expressions denote functions. Well known examples of concatenative languages are PostScript, Forth, Factor and Joy.
A concatenative programming language is a point-free programming language in which all expressions denote functions, and the juxtaposition of expressions denotes function composition. Concatenative programming replaces function application, which is common in other programming styles, with function composition as the default way to build subroutines.
They have minimal syntax and simple semantics, tend to be concise, and put emphasis on code over values.
The term was coined by Manfred von Thun to describe his language Joy, but some consider Forth as the first concatenative language.
Most languages described as concatenative are stack-based languages such as Forth, Joy, PostScript or Factor. Some concatenative languages that are not stack-based exist too, such as Enchilada, Om, and XY.