A diferencia de los lenguajes de programación convencionales, las aplicaciones se diseñan en función de un conjunto predefinido de reglas que deben ser seguidas, no procedimientos que deben ser ejecutados.