Programación funcional: Diferenzas entre revisións

Contido eliminado Contido engadido
→‎Características: tradución e arranxos de xénero
 
Liña 13:
Os programas escritos nunha linguaxe funcional están constituídos unicamente por definicións de funcións, entendendo estas non como subprogramas clásicos dunha linguaxe imperativa, senón como funcións puramente matemáticas, nas que se verifican certas propiedades como a ''[[transparencia referencial]]'' (o significado dunha expresión depende unicamente do significado dos seus subexpresións), e xa que logo, a carencia total de ''[[efecto lateral|efectos laterais]]''.
 
Outras características propias destas linguaxes son a non existencia de asignacións de variables e a falta de construcións estruturadas como a secuencia ou a iteración (o que obriga na práctica a que todas as repeticións de instrucións seránsexan levadas a cabo por medio de [[recursión|funcións recursivas]]).
 
Existen dúas grandes categorías de linguaxes funcionais: as funcionais ''puras'' e as ''híbridas''. A diferenza entre ambos estriba en que as linguaxes funcionais híbridas son menos dogmáticas que as puras, ao admitir conceptos tomados das [[programación imperativa|linguaxes imperativas]], como as secuencias de instrucións ou a asignación de variables. En contraste, as linguaxes funcionais puras teñen unha maior potencia expresiva, conservando á vez a súa transparencia referencial, algo que non se cumpre sempre cunha linguaxe funcional híbrida.