SlideShare una empresa de Scribd logo
1 de 17
a) Los que soportan
                   técnicas de
                   programación de
                   bajo nivel




PARADIGMAS DE   b) Los que soportan
PROGRAMACIÓN    métodos de diseño
                de algoritmos
                                      a) Solución procedimental
                                      u operacional


                c) Los que soportan   b) Solución demostrativa
                soluciones de
                programación de
                alto nivel
                                      c) Solución declarativa
    Un paradigma de programación es un
    modelo básico de diseño y desarrollo de
    programas, que permite producir programas
    con unas directrices específicas, tales como:
    estructura modular, fuerte cohesión, alta
    rentabilidad, etc.
Floyd describió tres categorías :
                a) Los que soportan técnicas de
                programación de bajo nivel (ej.:
                    copia de ficheros frente
               estructuras de datos compartidos)



               b) Los que soportan métodos de
               diseño de algoritmos (ej.: divide y
                   vencerás, programación
                        dinámica, etc.)




               c) Los que soportan soluciones de
               programación de alto nivel, como
                los descritos en el punto anterior
Floyd también señala lo diferente que resultan
  los lenguajes de programación que soportan
  cada     una   de   estas   categorías    de
  paradigmas.
Se agrupan en tres categorías de acuerdo con
  la solución que aportan para resolver el
  problema
• Describe etapa a etapa el modo de construir la solución. Es
                   decir seña
   Solución
procedimental    • la forma de obtener la solución.
u operacional.




                 • . Es una variante de la procedimental. Especifica la solución
                   describiendo ejemplos y permitiendo que el sistema
                   generalice la solución de estos ejemplos para otros casos.
  Solución
demostrativa.




                 • Señala las características que debe tener la solución, sin
                   describir cómo procesarla. Es decir señala qué se desea
 Solución          obtener pero no cómo obtenerlo.
declarativa.
 Cuando se programa bajo un paradigma demostrativo (también
  llamada programación por ejemplos), el programador no especifica
  procedimentalmente cómo construir una solución. En su lugar,
  presentan soluciones de problemas similares y permite al sistema
  que generalice una solución procedimental a partir de estas
  demostraciones. Los esquemas individuales para generalizar tales
  soluciones van desde simular una secuencia procedimental o inferir
  intenciones.
Otra solución es la programación asistida: el sistema observa acciones
  que el programador ejecuta, y si son similares a acciones pasadas,
  intentará inferir cuál es la próxima acción que hará el programador.
  Las dos principales objeciones al sistema de inferencia son:
a) Si no se comprueban exhaustivamente pueden producir programas
  erróneos que trabajan correctamente con los ejemplos de prueba,
  pero que fallen posteriormente en otros casos
b) La capacidad de inferencia es tan limitada, que el usuario debe de
  guiar el proceso en la mayoría de los casos.
.
   En este tipo, un programa se construye señalando
    hechos,      reglas,    restricciones,   ecuaciones,
    transformaciones y otras propiedades derivadas del
    conjunto de valores que configuran la solución. A
    partir de esta información el sistema debe
    proporcionar un esquema que incluya el orden de
    evaluación que compute una solución. Aquí no existe
    la descripción de las diferentes etapas a seguir para
    alcanzar una solución, como en el caso anterior.

   Estos paradigmas permiten el uso de variables para
    almacenar valores intermedios, pero no para
    actualizar estados de información.
a) el imperativo
                             •paradigmas con
                             efecto de lado:



                                                 b) el orientado
                                                 a objetos


PARADIGMAS PROCEDIMENTALES
U OPERACIONALES.




                              • paradigmas sin
                              efecto de lado
   La característica fundamental de estos paradigmas
    es la secuencia computacional realizada etapa a
    etapa para resolver el problema. Su mayor dificultad
    reside en determinar si el valor computado es una
    solución correcta del problema, por lo que se han
    desarrollado multitud de técnicas de depuración y
    verificación para probar la corrección de los
    problemas desarrollados basándose en este tipo de
    paradigmas.

   Pueden ser de dos tipos básicos: Los que actúan
    modificando repetidamente la representación de sus
    datos (efecto de lado); y los que actúan creando
    nuevos datos continuamente (sin efecto de lado).
   utilizan un modelo en el que las variables
    están estrechamente relacionadas con
    direcciones de la memoria del ordenador.
    Cuando se ejecuta el programa, el
    contenido de estas direcciones se actualiza
    repetidamente, pues las variables reciben
    múltiples asignaciones, y al finalizar el trabajo,
    los valores finales de las variables representan
    el resultado.
   no incluyen a los que tradicionalmente son
    denominados paradigmas funcionales. Sin
    embargo es importante distinguir la solución
    funcional procedimental de la solución funcional
    declarativa.

   Los paradigmas procedimentales definen la
    secuencia explícitamente, pero esta secuencia
    se puede procesar en serie o en paralelo. En este
    segundo caso el procesamiento paralelo puede
    ser asíncrono (cooperación de procesos
    paralelos) o síncrono (procesos simples aplicados
    simultáneamente a muchos objetos).
   Este paradigma se caracteriza por un modelo
    abstracto de ordenador que consiste en un gran
    almacenamiento de memoria.

   El ordenador almacena una representación
    codificada de un cálculo y ejecuta una secuencia
    de comandos que modifican el contenido de ese
    almacenamiento. Este paradigma viene bien
    representado por la arquitectura Von Newman (1903-
    1957), ya que utiliza este modelo de máquina para
    conceptualizar las soluciones: "Existe un programa en
    memoria que se va ejecutando secuencialmente y
    que toma unos datos de la memoria, efectúa unos
    cálculos y actualiza la memoria".
   a) Concepto de celda de memoria ("variable") para almacenar valores.
    El componente principal de la arquitectura es la memoria, compuesto
    por un gran número de celdas donde se almacenan los datos. Las
    celdas tienen nombre (concepto de variable) que las referencian, y
    sobre los que se producen efectos de lado y definiciones de alias.

    b) Operaciones de asignación. Estrechamente ligado a la arquitectura
    de la memoria, se encuentra la idea de que cada valor calculado debe
    ser "almacenado", es decir asignado a una celda. Esta es la razón de la
    importancia de la sentencia de asignación en el paradigma imperativo.
    Las nociones de celda de memoria y asignación en bajo nivel, se
    tienden a todos los lenguajes de programación y fuerzan en los
    programadores un estilo de pensamiento basado en la arquitectura Von
                                   Neumann.
    c) Repetición. Un programa imperativo, normalmente realiza su tarea
    ejecutando repetidamente una secuencia de pasos elementales, ya
    que en este modelo computacional la única forma de ejecutar algo
    complejo es repitiendo una secuencia de instrucciones.
   El paradigma funcional está basado en el modelo matemático
    de composición funcional. En este modelo, el resultado de un
    cálculo es la entrada del siguiente, y así sucesivamente hasta
    que una composición produce el valor deseado.

   No existe el concepto de celda de memoria que es asignada o
    modificada. Más bien, existen valores intermedios que son el
    resultado de cálculos anteriores y las entradas a cálculos
    subsiguientes. Tampoco existen sentencias imperativas y todas
    las funciones tienen transparencia referencial.

   La programación funcional incorpora el concepto de función
    como objeto de primera clase, lo que significa que las funciones
    se pueden tratar como datos (pueden pasar como parámetros,
    calculadas y devueltas como valores normales, y mezcladas en
    el cálculo con otras formas de datos).

La Programación Heurística implica una forma de modelar
el problema en lo que respecta a la representación de su
estructura, estrategias de búsqueda y métodos de
resolución, que configuran el Paradigma Heurístico.

Este tipo de programación se aplica con mayor
intensidad en el campo de la Inteligencia Artificial
(IA), y en especial, en la Ingeniería del Conocimiento,
dado que el ser humano opera la mayor parte de las
veces utilizando heurísticas, un hecho cierto que una
heurística es la conclusión del razonamiento humano
en un dominio específico, por lo que es normal que
este tipo de programación que encuadrado en el
área de la I.A., ya que implementa el conocimiento
humano, dado por la experiencia, utilizando reglas
de buena lógica.
Paradigmas

Más contenido relacionado

La actualidad más candente

Logica Difusa Introduccion
Logica Difusa IntroduccionLogica Difusa Introduccion
Logica Difusa IntroduccionESCOM
 
¿Cómo realizar entrevistas eficaces para obtener requisitos de software?
¿Cómo realizar entrevistas eficaces para obtener requisitos de software?¿Cómo realizar entrevistas eficaces para obtener requisitos de software?
¿Cómo realizar entrevistas eficaces para obtener requisitos de software?Software Guru
 
Requisitos sitio web
Requisitos sitio webRequisitos sitio web
Requisitos sitio webkamadeva99
 
Arquitectura de Von Neumann
Arquitectura de Von NeumannArquitectura de Von Neumann
Arquitectura de Von Neumannjaguilar69
 
Lenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretesLenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretesIsrael Castillo Cruz
 
Administracion de memoria en una PC
Administracion de memoria en una PCAdministracion de memoria en una PC
Administracion de memoria en una PCSimón Aranguren
 
Crisis del software
Crisis del softwareCrisis del software
Crisis del softwareecasteloc
 
Ejemplos de proyectos al modelo en cascada
Ejemplos de proyectos  al modelo en cascadaEjemplos de proyectos  al modelo en cascada
Ejemplos de proyectos al modelo en cascadaaics-1986-13-saraguro
 

La actualidad más candente (13)

Logica Difusa Introduccion
Logica Difusa IntroduccionLogica Difusa Introduccion
Logica Difusa Introduccion
 
Algoritmos Paralelos
Algoritmos ParalelosAlgoritmos Paralelos
Algoritmos Paralelos
 
Gramaticas
GramaticasGramaticas
Gramaticas
 
¿Cómo realizar entrevistas eficaces para obtener requisitos de software?
¿Cómo realizar entrevistas eficaces para obtener requisitos de software?¿Cómo realizar entrevistas eficaces para obtener requisitos de software?
¿Cómo realizar entrevistas eficaces para obtener requisitos de software?
 
Requisitos sitio web
Requisitos sitio webRequisitos sitio web
Requisitos sitio web
 
Arquitectura de Von Neumann
Arquitectura de Von NeumannArquitectura de Von Neumann
Arquitectura de Von Neumann
 
Concurrencias BD
Concurrencias BDConcurrencias BD
Concurrencias BD
 
BPMN y BPEL
BPMN y BPELBPMN y BPEL
BPMN y BPEL
 
Lenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretesLenguajes de programacion tema 2_compiladores e interpretes
Lenguajes de programacion tema 2_compiladores e interpretes
 
1. el proceso unificado
1. el proceso unificado1. el proceso unificado
1. el proceso unificado
 
Administracion de memoria en una PC
Administracion de memoria en una PCAdministracion de memoria en una PC
Administracion de memoria en una PC
 
Crisis del software
Crisis del softwareCrisis del software
Crisis del software
 
Ejemplos de proyectos al modelo en cascada
Ejemplos de proyectos  al modelo en cascadaEjemplos de proyectos  al modelo en cascada
Ejemplos de proyectos al modelo en cascada
 

Destacado

Inevstigaciòn: violencia en parejas adolescentes
Inevstigaciòn: violencia en parejas adolescentesInevstigaciòn: violencia en parejas adolescentes
Inevstigaciòn: violencia en parejas adolescentesAlejandra Maccagno
 
La gerencia social_y_el_valor_publico_mokate_y_saavedra
La gerencia social_y_el_valor_publico_mokate_y_saavedraLa gerencia social_y_el_valor_publico_mokate_y_saavedra
La gerencia social_y_el_valor_publico_mokate_y_saavedraAlex Chavez Tovar
 
Paradigmas de Evaluación
Paradigmas de EvaluaciónParadigmas de Evaluación
Paradigmas de EvaluaciónDonePerez
 
Modelos y competencias Sandro TORRES
Modelos y competencias Sandro TORRESModelos y competencias Sandro TORRES
Modelos y competencias Sandro TORRESSandro Torres
 
Codigo Binario
Codigo BinarioCodigo Binario
Codigo BinarioLuis Bravo
 
Método hermenéutico y heurístico
Método hermenéutico y heurísticoMétodo hermenéutico y heurístico
Método hermenéutico y heurísticomaribelperezg
 
Comparacion Paradigmas Cuantitativo Y Cualitativo
Comparacion Paradigmas Cuantitativo Y CualitativoComparacion Paradigmas Cuantitativo Y Cualitativo
Comparacion Paradigmas Cuantitativo Y Cualitativoguest975e56
 
Tipos de lenguaje de programacion
Tipos de lenguaje de programacionTipos de lenguaje de programacion
Tipos de lenguaje de programacionLy Andre
 
Los Tres Paradigmas en Investigación
Los Tres Paradigmas en InvestigaciónLos Tres Paradigmas en Investigación
Los Tres Paradigmas en InvestigaciónEstebanQuiroga
 
Historia Y EvolucióN De Los Lenguajes De ProgramacióN
Historia Y EvolucióN De Los Lenguajes De ProgramacióNHistoria Y EvolucióN De Los Lenguajes De ProgramacióN
Historia Y EvolucióN De Los Lenguajes De ProgramacióNda4
 

Destacado (13)

Inevstigaciòn: violencia en parejas adolescentes
Inevstigaciòn: violencia en parejas adolescentesInevstigaciòn: violencia en parejas adolescentes
Inevstigaciòn: violencia en parejas adolescentes
 
La gerencia social_y_el_valor_publico_mokate_y_saavedra
La gerencia social_y_el_valor_publico_mokate_y_saavedraLa gerencia social_y_el_valor_publico_mokate_y_saavedra
La gerencia social_y_el_valor_publico_mokate_y_saavedra
 
Paradigmas de Evaluación
Paradigmas de EvaluaciónParadigmas de Evaluación
Paradigmas de Evaluación
 
Gerente público i (5) (1)
Gerente público i (5) (1)Gerente público i (5) (1)
Gerente público i (5) (1)
 
Modelos y competencias Sandro TORRES
Modelos y competencias Sandro TORRESModelos y competencias Sandro TORRES
Modelos y competencias Sandro TORRES
 
Codigo Binario
Codigo BinarioCodigo Binario
Codigo Binario
 
Método hermenéutico y heurístico
Método hermenéutico y heurísticoMétodo hermenéutico y heurístico
Método hermenéutico y heurístico
 
áLgebra booleana
áLgebra booleanaáLgebra booleana
áLgebra booleana
 
Comparacion Paradigmas Cuantitativo Y Cualitativo
Comparacion Paradigmas Cuantitativo Y CualitativoComparacion Paradigmas Cuantitativo Y Cualitativo
Comparacion Paradigmas Cuantitativo Y Cualitativo
 
Tipos de lenguaje de programacion
Tipos de lenguaje de programacionTipos de lenguaje de programacion
Tipos de lenguaje de programacion
 
Enfoque mixto
Enfoque mixtoEnfoque mixto
Enfoque mixto
 
Los Tres Paradigmas en Investigación
Los Tres Paradigmas en InvestigaciónLos Tres Paradigmas en Investigación
Los Tres Paradigmas en Investigación
 
Historia Y EvolucióN De Los Lenguajes De ProgramacióN
Historia Y EvolucióN De Los Lenguajes De ProgramacióNHistoria Y EvolucióN De Los Lenguajes De ProgramacióN
Historia Y EvolucióN De Los Lenguajes De ProgramacióN
 

Similar a Paradigmas

Actividad 14: Diseño de Algoritmos Paralelos
Actividad 14: Diseño de Algoritmos ParalelosActividad 14: Diseño de Algoritmos Paralelos
Actividad 14: Diseño de Algoritmos ParalelosCarlosHung9
 
Paradigmas de Programación
Paradigmas de ProgramaciónParadigmas de Programación
Paradigmas de ProgramaciónJose Sanchez
 
Paradigmas programacion
Paradigmas programacionParadigmas programacion
Paradigmas programacionLuis Peralta
 
Presentac..
Presentac..Presentac..
Presentac..Wil Mer
 
Algoritmos libro 6
Algoritmos  libro 6Algoritmos  libro 6
Algoritmos libro 6desi2907
 
Lec11 metodos
Lec11 metodosLec11 metodos
Lec11 metodoshtmrk
 
Paradigmas de programación
Paradigmas de programaciónParadigmas de programación
Paradigmas de programaciónMay Ibarra
 
Diego ochoaguerrero nelsondavidluna
Diego ochoaguerrero nelsondavidlunaDiego ochoaguerrero nelsondavidluna
Diego ochoaguerrero nelsondavidlunaDiǝgo Fǝr
 
Unidad III-Programación Modular-introducción al lenguaje programable.pdf
Unidad III-Programación Modular-introducción al lenguaje programable.pdfUnidad III-Programación Modular-introducción al lenguaje programable.pdf
Unidad III-Programación Modular-introducción al lenguaje programable.pdfEDWINERNESTOMADRIDME
 
El algoritmo como estrategia y herramienta para la solución de problemas
El algoritmo como estrategia y herramienta para la solución de problemasEl algoritmo como estrategia y herramienta para la solución de problemas
El algoritmo como estrategia y herramienta para la solución de problemasBERNARDAURELIOFELIZM
 
PRINCIPIOS_ALGORITMOS_Lectura_2.pdf
PRINCIPIOS_ALGORITMOS_Lectura_2.pdfPRINCIPIOS_ALGORITMOS_Lectura_2.pdf
PRINCIPIOS_ALGORITMOS_Lectura_2.pdfpitechu
 
Apun9algol
Apun9algolApun9algol
Apun9algolpabesacv
 
Qué es un algoritmo 10
Qué es un algoritmo 10Qué es un algoritmo 10
Qué es un algoritmo 10Ricaurte Duran
 
Etapas del desarrolo de un programa
Etapas del desarrolo de un programaEtapas del desarrolo de un programa
Etapas del desarrolo de un programazeta2015
 

Similar a Paradigmas (20)

Programacion Funcional
Programacion FuncionalProgramacion Funcional
Programacion Funcional
 
Actividad 14: Diseño de Algoritmos Paralelos
Actividad 14: Diseño de Algoritmos ParalelosActividad 14: Diseño de Algoritmos Paralelos
Actividad 14: Diseño de Algoritmos Paralelos
 
Paradigmas de Programación
Paradigmas de ProgramaciónParadigmas de Programación
Paradigmas de Programación
 
Paradigmas programacion
Paradigmas programacionParadigmas programacion
Paradigmas programacion
 
Presentac..
Presentac..Presentac..
Presentac..
 
ALGORITMOS
ALGORITMOS ALGORITMOS
ALGORITMOS
 
Algoritmos libro 6
Algoritmos  libro 6Algoritmos  libro 6
Algoritmos libro 6
 
Introduccion a haskell
Introduccion a haskellIntroduccion a haskell
Introduccion a haskell
 
ALGORITMOS y ejemplo en java.pptx
ALGORITMOS  y ejemplo en java.pptxALGORITMOS  y ejemplo en java.pptx
ALGORITMOS y ejemplo en java.pptx
 
Presentación1.pptx
Presentación1.pptxPresentación1.pptx
Presentación1.pptx
 
MP.pptx
MP.pptxMP.pptx
MP.pptx
 
Lec11 metodos
Lec11 metodosLec11 metodos
Lec11 metodos
 
Paradigmas de programación
Paradigmas de programaciónParadigmas de programación
Paradigmas de programación
 
Diego ochoaguerrero nelsondavidluna
Diego ochoaguerrero nelsondavidlunaDiego ochoaguerrero nelsondavidluna
Diego ochoaguerrero nelsondavidluna
 
Unidad III-Programación Modular-introducción al lenguaje programable.pdf
Unidad III-Programación Modular-introducción al lenguaje programable.pdfUnidad III-Programación Modular-introducción al lenguaje programable.pdf
Unidad III-Programación Modular-introducción al lenguaje programable.pdf
 
El algoritmo como estrategia y herramienta para la solución de problemas
El algoritmo como estrategia y herramienta para la solución de problemasEl algoritmo como estrategia y herramienta para la solución de problemas
El algoritmo como estrategia y herramienta para la solución de problemas
 
PRINCIPIOS_ALGORITMOS_Lectura_2.pdf
PRINCIPIOS_ALGORITMOS_Lectura_2.pdfPRINCIPIOS_ALGORITMOS_Lectura_2.pdf
PRINCIPIOS_ALGORITMOS_Lectura_2.pdf
 
Apun9algol
Apun9algolApun9algol
Apun9algol
 
Qué es un algoritmo 10
Qué es un algoritmo 10Qué es un algoritmo 10
Qué es un algoritmo 10
 
Etapas del desarrolo de un programa
Etapas del desarrolo de un programaEtapas del desarrolo de un programa
Etapas del desarrolo de un programa
 

Paradigmas

  • 1.
  • 2. a) Los que soportan técnicas de programación de bajo nivel PARADIGMAS DE b) Los que soportan PROGRAMACIÓN métodos de diseño de algoritmos a) Solución procedimental u operacional c) Los que soportan b) Solución demostrativa soluciones de programación de alto nivel c) Solución declarativa
  • 3. Un paradigma de programación es un modelo básico de diseño y desarrollo de programas, que permite producir programas con unas directrices específicas, tales como: estructura modular, fuerte cohesión, alta rentabilidad, etc.
  • 4. Floyd describió tres categorías : a) Los que soportan técnicas de programación de bajo nivel (ej.: copia de ficheros frente estructuras de datos compartidos) b) Los que soportan métodos de diseño de algoritmos (ej.: divide y vencerás, programación dinámica, etc.) c) Los que soportan soluciones de programación de alto nivel, como los descritos en el punto anterior
  • 5. Floyd también señala lo diferente que resultan los lenguajes de programación que soportan cada una de estas categorías de paradigmas. Se agrupan en tres categorías de acuerdo con la solución que aportan para resolver el problema
  • 6. • Describe etapa a etapa el modo de construir la solución. Es decir seña Solución procedimental • la forma de obtener la solución. u operacional. • . Es una variante de la procedimental. Especifica la solución describiendo ejemplos y permitiendo que el sistema generalice la solución de estos ejemplos para otros casos. Solución demostrativa. • Señala las características que debe tener la solución, sin describir cómo procesarla. Es decir señala qué se desea Solución obtener pero no cómo obtenerlo. declarativa.
  • 7.  Cuando se programa bajo un paradigma demostrativo (también llamada programación por ejemplos), el programador no especifica procedimentalmente cómo construir una solución. En su lugar, presentan soluciones de problemas similares y permite al sistema que generalice una solución procedimental a partir de estas demostraciones. Los esquemas individuales para generalizar tales soluciones van desde simular una secuencia procedimental o inferir intenciones. Otra solución es la programación asistida: el sistema observa acciones que el programador ejecuta, y si son similares a acciones pasadas, intentará inferir cuál es la próxima acción que hará el programador. Las dos principales objeciones al sistema de inferencia son: a) Si no se comprueban exhaustivamente pueden producir programas erróneos que trabajan correctamente con los ejemplos de prueba, pero que fallen posteriormente en otros casos b) La capacidad de inferencia es tan limitada, que el usuario debe de guiar el proceso en la mayoría de los casos. .
  • 8. En este tipo, un programa se construye señalando hechos, reglas, restricciones, ecuaciones, transformaciones y otras propiedades derivadas del conjunto de valores que configuran la solución. A partir de esta información el sistema debe proporcionar un esquema que incluya el orden de evaluación que compute una solución. Aquí no existe la descripción de las diferentes etapas a seguir para alcanzar una solución, como en el caso anterior.  Estos paradigmas permiten el uso de variables para almacenar valores intermedios, pero no para actualizar estados de información.
  • 9. a) el imperativo •paradigmas con efecto de lado: b) el orientado a objetos PARADIGMAS PROCEDIMENTALES U OPERACIONALES. • paradigmas sin efecto de lado
  • 10. La característica fundamental de estos paradigmas es la secuencia computacional realizada etapa a etapa para resolver el problema. Su mayor dificultad reside en determinar si el valor computado es una solución correcta del problema, por lo que se han desarrollado multitud de técnicas de depuración y verificación para probar la corrección de los problemas desarrollados basándose en este tipo de paradigmas.  Pueden ser de dos tipos básicos: Los que actúan modificando repetidamente la representación de sus datos (efecto de lado); y los que actúan creando nuevos datos continuamente (sin efecto de lado).
  • 11. utilizan un modelo en el que las variables están estrechamente relacionadas con direcciones de la memoria del ordenador. Cuando se ejecuta el programa, el contenido de estas direcciones se actualiza repetidamente, pues las variables reciben múltiples asignaciones, y al finalizar el trabajo, los valores finales de las variables representan el resultado.
  • 12. no incluyen a los que tradicionalmente son denominados paradigmas funcionales. Sin embargo es importante distinguir la solución funcional procedimental de la solución funcional declarativa.  Los paradigmas procedimentales definen la secuencia explícitamente, pero esta secuencia se puede procesar en serie o en paralelo. En este segundo caso el procesamiento paralelo puede ser asíncrono (cooperación de procesos paralelos) o síncrono (procesos simples aplicados simultáneamente a muchos objetos).
  • 13. Este paradigma se caracteriza por un modelo abstracto de ordenador que consiste en un gran almacenamiento de memoria.  El ordenador almacena una representación codificada de un cálculo y ejecuta una secuencia de comandos que modifican el contenido de ese almacenamiento. Este paradigma viene bien representado por la arquitectura Von Newman (1903- 1957), ya que utiliza este modelo de máquina para conceptualizar las soluciones: "Existe un programa en memoria que se va ejecutando secuencialmente y que toma unos datos de la memoria, efectúa unos cálculos y actualiza la memoria".
  • 14. a) Concepto de celda de memoria ("variable") para almacenar valores. El componente principal de la arquitectura es la memoria, compuesto por un gran número de celdas donde se almacenan los datos. Las celdas tienen nombre (concepto de variable) que las referencian, y sobre los que se producen efectos de lado y definiciones de alias. b) Operaciones de asignación. Estrechamente ligado a la arquitectura de la memoria, se encuentra la idea de que cada valor calculado debe ser "almacenado", es decir asignado a una celda. Esta es la razón de la importancia de la sentencia de asignación en el paradigma imperativo. Las nociones de celda de memoria y asignación en bajo nivel, se tienden a todos los lenguajes de programación y fuerzan en los programadores un estilo de pensamiento basado en la arquitectura Von Neumann. c) Repetición. Un programa imperativo, normalmente realiza su tarea ejecutando repetidamente una secuencia de pasos elementales, ya que en este modelo computacional la única forma de ejecutar algo complejo es repitiendo una secuencia de instrucciones.
  • 15. El paradigma funcional está basado en el modelo matemático de composición funcional. En este modelo, el resultado de un cálculo es la entrada del siguiente, y así sucesivamente hasta que una composición produce el valor deseado.  No existe el concepto de celda de memoria que es asignada o modificada. Más bien, existen valores intermedios que son el resultado de cálculos anteriores y las entradas a cálculos subsiguientes. Tampoco existen sentencias imperativas y todas las funciones tienen transparencia referencial.  La programación funcional incorpora el concepto de función como objeto de primera clase, lo que significa que las funciones se pueden tratar como datos (pueden pasar como parámetros, calculadas y devueltas como valores normales, y mezcladas en el cálculo con otras formas de datos).
  • 16.  La Programación Heurística implica una forma de modelar el problema en lo que respecta a la representación de su estructura, estrategias de búsqueda y métodos de resolución, que configuran el Paradigma Heurístico. Este tipo de programación se aplica con mayor intensidad en el campo de la Inteligencia Artificial (IA), y en especial, en la Ingeniería del Conocimiento, dado que el ser humano opera la mayor parte de las veces utilizando heurísticas, un hecho cierto que una heurística es la conclusión del razonamiento humano en un dominio específico, por lo que es normal que este tipo de programación que encuadrado en el área de la I.A., ya que implementa el conocimiento humano, dado por la experiencia, utilizando reglas de buena lógica.