Está en la página 1de 6

qwertyuopasdfgh|kzxcvbnmqwe

rtyuopasdfgh|kzxcvbnmqwertyu
opasdfgh|kzxcvbnmqwertyuopa
sdfgh|kzxcvbnmqwertyuopasdfg
h|kzxcvbnmqwertyuopasdfgh|kz
xcvbnmqwertyuopasdfgh|kzxcvb
nmqwertyuopasdfgh|kzxcvbnmq
wertyuopasdfgh|kzxcvbnmqwert
yuopasdfgh|kzxcvbnmqwertyuo
pasdfgh|kzxcvbnmqwertyuopas
dfgh|kzxcvbnmqwertyuopasdfgh
|kzxcvbnmqwertyuopasdfgh|kzx
cvbnmqwertyuopasdfgh|kzxcvb
nmqwertyuopasdfgh|kzxcvbnmq
wertyuopasdfgh|kzxcvbnmqwert
yuopasdfgh|kzxcvbnmrtyuopas
dfgh|kzxcvbnmqwertyuopasdfgh
|kzxcvbnmqwertyuopasdfgh|kzx
cvbnmqwertyuopasdfgh|kzxcvb
Introduccn a as Cencas de a Computacn
Introduccn a as Cencas de
a Computacn
Programacn Lgca y Funcona
27 de |uo de 2009
Cora Santos Hector
Fores Vcente For Naey
Gamboa Castaeda |os Ne
Osoro Orozco Margarta
Santago Zavaa Amador
Introduccn a as Cencas de a Computacn
Programacin Lgica y Funcional
Introduccin
Para empezar, debemos de tener caro qu es e concepto de
paradgma. Un paradgma de programacn es una coeccn de
patrones conceptuaes que |untos modean e proceso de dseo y
determnan a estructura de programa.
Programacin lgica
En os engua|es tradconaes, a programacn consste en ndcar cmo
resover un probema medante sentencas; en a programacn gca,
se traba|a de una forma descrptva, estabecendo reacones entre
entdades, ndcando no cmo, sno qu hacer. Est basado e ccuo de
predcados (o gca de prmer orden)
E ccuo de predcados es aque en donde soamente se cuantcan as
varabes ndvduaes. Estas tmas corresponden a su|eto de una
oracn, desde a perspectva de a gramtca usua.
Campos de aplicacin
La programacn gca encuentra su hbitat natura en apcacones de
ntegenca artca o reaconada:
Sstemas expertos, donde un sstema de nformacn mta as
recomendacones de un experto sobre agn domno de
conocmento.
Demostracn automtca de teoremas, donde un programa
genera nuevos teoremas sobre una teora exstente.
Reconocmento de engua|e natura, donde un programa es capaz
de comprender (con mtacones) a nformacn contenda en una
expresn ngstca humana.
Un e|empo de programacn gca es e engua|e de programacn
amado Prolog.
Proog es un engua|e de programacn decaratvo e nterpretado, que
esta basado en a gca de prmer orden y a causua de Horn. E
engua|e se usa para representar conocmentos sobre un determnado
domno y as reacones entre ob|etos de ese domno. Un programa en
Proog consste de una base de datos de reacones gcas y detaes
que se cumpen para a apcacn. Dcha base de datos no tene una
estructura mpuesta, n un procedmento o case prncpa. Los datos y
Introduccn a as Cencas de a Computacn
reacones de un programa en Proog se escrben en un nco archvo, e
cua es consutado por e programa cuando se e hace una pregunta.
Ventajas y Desventajas de la Programacin Lgica.
Ventajas
Simplicidad (sus expresiones son enunciados y silogismos)
Cercana a las especificaciones del problema realizado con lenguajes formales
(demostraciones matemticas)
Sencillez, potencia y elegancia (Implementacin en sistemas expertos)
etodologa rigurosa de especificacin (ya !ue el sistema no se debe de prestar a
ambig"edades)
Sencillez en la implementacin de estructuras complejas (pueden resol#erse un
sinfn de problemas de manera ms sencilla !ue con otros tipos de programacin)
Desventajas
$e!uiere !ue el programador tenga una formacin sumamente fuerte en lgica
%oca flexibilidad para crear aplicaciones
Programacin Funcional.
La Programacn funcona es un paradgma de programacn basado en
a utzacn de funcones matemtcas. Est basado en un modeo
matemtco: el clculo lambda.
El clculo lambda es un sstema forma dseado para nvestgar a
dencn de funcn, a nocn de apcacn de funcones y a recursn.
Recursin es a dencn de una funcn usando a funcn que se est
denendo.
"Para entender a recursn prmero hay que entender a recursn"
uncin es una transformacn de un eemento de un con|unto, e
domno, en un, y soo un, eemento de otro con|unto, e codomno.
Introduccn a as Cencas de a Computacn
Los programas escrtos en un engua|e funcona estn consttudos
ncamente de funcones, en as que se vercan certas propedades
como a transparencia re!erencial y, por tanto, a carenca tota de
e!ectos laterales. Otras caracterstcas propas de estos engua|es son a
no exstenca de asgnacones de varabes y a fata de construccones
estructuradas como a secuenca o a teracn (o que obga en a
prctca a que todas as repetcones de nstruccones se even a cabo
por medo de funcones recursvas).
Exsten dos grandes categoras de engua|es funconaes: os funconaes
puros y os h"bridos. La dferenca entre ambos estrba en que os
engua|es funconaes hbrdos son menos dogmtcos que os puros, a
admtr conceptos tomados de os engua|es mperatvos, como as
secuencas de nstruccones o a asgnacn de varabes.
Ventajas y Desventajas de la Programacin uncional.
Ventajas
&ace gran 'nfasis en !ue las propiedades de los datos !ue debern ingresarse a la
funcin
Incorporan funciones de orden superior (como las deri#adas o integrales)
(#aluacin paralela (puede c)ecar simultneamente #arias condiciones)
$eutilizacin de cdigo (al crear una funcin podemos llamarla para #ol#erla a
ocupar)
*atos potencialmente infinitos
+acilidad a la )ora de implementar estructuras de datos complejas (se pueden crear
nue#os tipos de datos)
Desventajas
+alta de estandarizacin
,ajo rendimiento de los programas(los programas solo pueden )acer lo !ue est'n
programados para )acer)
Lenguajes uncionales.
Introduccn a as Cencas de a Computacn
Haske.
E Haske es un engua|e fuertemente tpado, pero eo no quere decr
que permta e uso de asgnacn de varabes. Otra caracterstca que no
posee Haske es a teracn o secuencacn a a hora de programar.
Cas todos os programas en Haske se escrben medante funcones
recursvas. No obstante, estas caracterstcas dependen de engua|e
funcona que estemos usando. Haske es un engua|e funcona puro y,
a contraro que os hbrdos, no poseen a teracn de nstruccones, a
secuencacn, a asgnacn de varabes, etc.
Conclusiones:
Despus de haber anazado a programacn gca y a programacn
funcona, nos damos cuenta de que ambas programacones son
mportantes, caro que en agunos programas nos va a ser ms t
programaro gcamente, ya que e ccuo de predcados permte que a
computadora sepa como resover probemas por medo de sus
argumentos mentras que en otros programas nos ser ms t a
programacn funcona por su mane|o de varabes en su estructura y
en e ccuo ambda que mane|a en sus funcones.
Introduccn a as Cencas de a Computacn
Conceptos:
#ransparencia Re!erencial: una funcn sempre devueve e msmo
resutado para os msmos parmetros, ndependentemente de
momento y ugar que se a nvoca.
$na !uncin es un valor matemtico %ue relaciona cada elemento
de un conjunto &de partida' con un (nico elemento de otro
con|unto &de llegada'.
Un engua|e de programacn es aque eemento dentro de a
nformtca que nos permte crear programas medante un
con|unto de nstruccones, operadores y regas de sntaxs; que
pone a dsposcn de programador para que este pueda
comuncarse con os dspostvos hardware y software exstentes.
Un con|unto es una agrupacn, case o coeccn de ob|etos
denomnados elementos del conjunto (aunque cuaquer dencn
dada esconde mpctamente parado|as gcas o contradccones).
Por ob|eto entenderemos no so entes fscos, como mesas, sas,
etc., sno tambn entes abstractos, como son nmeros, etras,
etc. La relacin de pertenencia entre os eementos y os con|untos
sempre es perfectamente dscernbe, en otras paabras, s un
ob|eto pertenece a un con|unto o no, sempre puede cacarse
como verdadero o faso.
E sogsmo es una forma de razonamento deductvo que consta
de dos proposcones como premsas y otra como concusn,
sendo a tma una nferenca necesaramente deductva de as
otras dos

También podría gustarte