Sunteți pe pagina 1din 13

TAREA #1

¿Qué es un paradigma?

Paradigma de programación es una propuesta tecnológica que es adoptada por


una Comunidad de Programadores cuyo núcleo central es incuestionable en cuanto a que
unívocamente trata de resolver uno o varios problemas claramente delimitados. La resolución de
estos problemas debe suponer consecuentemente un avance significativo en al menos un
parámetro que afecte a la ingeniería de Software. Tiene una estrecha relación con la formalización
de determinados lenguajes en su momento de definición. Un paradigma de programación está
delimitado en el tiempo en cuanto a aceptación y uso ya que nuevos paradigmas aportan nuevas o
mejores soluciones que la sustituyen parcial o totalmente.

¿Cuáles son los paradigmas de los lenguajes de programación?

Paradigma imperativo: Son aquellos que facilitan los cálculos por medio de cambios de estado,
entendiendo como estado la condición de una memoria de almacenamiento. Los lenguajes
estructurados en bloques, se refieren a los ámbitos anidados, es decir los bloques pueden estar
anidados dentro de otros bloques y contener sus propias variables.

Paradigma heurístico: Define un modelo de resolución de problemas en el que se incorpora algún


componente heurístico, sobre la base de una representación más apropiada de la estructura del
problema, para su resolución con técnicas heurísticas.

Paradigma funcional: Sus orígenes provienen del Cálculo Lambda (o ?-cálculo),


una teoría matemática elaborada por Alonzo Church como apoyo a sus estudios sobre
computabilidad. Un lenguaje funcional es, a grandes rasgos, un azúcar sintáctico del Cálculo
Lambda.

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.

Paradigma lógico: La Programación Lógica es un Paradigma de Programación basado en la Lógica.

Los programas construidos un lenguaje lógico están construidos únicamente por expresiones
lógicas, es decir, que son ciertas o falsas, en oposición a una expresión interrogativa (una
pregunta) o expresiones imperativas (una orden). Un ejemplo de lenguaje lógico es Prolog
(Programación lógica).

Paradigma basado en objetos: La programación orientada a objetos (OOP, por las siglas inglesas de


Object-Oriented Programming) es una forma de programar que proliferó a partir de los años
ochenta.

La Programación Orientada a Objetos (POO u OOP según siglas en inglés) es un paradigma de


programación que define los programas en términos de "clases de objetos", objetos que son
entidades que combinan estado (es decir, datos), comportamiento (esto
es, procedimientos o métodos) e identidad(propiedad del objeto que lo diferencia del resto).
TARE #2

Definición de: Lenguaje de Programación

Un lenguaje de programación es un lenguaje formal (o artificial, es decir, un lenguaje con reglas


gramaticales bien definidas) que le proporciona a una persona, en este caso el programador, la
capacidad de escribir (o programar) una serie de instrucciones o secuencias de órdenes en forma
de algoritmos con el fin de controlar el comportamiento físico y/o lógico de una computadora, de
manera que se puedan obtener diversas clases de datos o ejecutar determinadas tareas. A todo
este conjunto de órdenes escritas mediante un lenguaje de programación se le
denomina programa.

Clasificación de los lenguajes de alto nivel:

 Lenguajes imperativos o procedurales. Estos lenguajes se fundamentan en el uso de


variables para almacenar valores y el uso de instrucciones que indican las operaciones a
realizar sobre los datos. La mayoría de los lenguajes de alto nivel son de este tipo.
 Lenguajes declarativos. En este caso, el proceso por el cual se ejecuta el programa no
aparece de forma explícita. Los programas se construyen mediante la definición de
funciones (lenguajes funcionales como Lisp) o expresiones lógicas que indican las
relaciones entre determinadas estructuras de datos (lenguajes de programación
lógica como Prolog).
 Lenguajes orientados a objetos. El diseño de los programas se centra más en los datos y su
estructura. Los programas consisten en descripciones de unidades denominadas objetos
que encapsulan los datos y las operaciones que actúan sobre ellos. Uno de los lenguajes
más usados en esta filosofía es el C++.
 Lenguajes orientados al problema. Este tipo de lenguajes están diseñados para
problemas específicos, principalmente de gestión. Los programas están formados por
sentencias que indican qué se quiere hacer. Generalmente, suelen ser generadores de
aplicaciones que permiten cierta automatización de la tarea de desarrollo de
software de gestión.

Ejemplo de lenguajes

 Interpretados: Los lenguajes interpretados más famosos en la actualidad son PHP, ASP,
Perl, Python, TCL y Bash.
 Compilados: Pascal, C, C++.
 Orientados a objetos: Java, Ruby, Visual Basic.
 Funcionales: Los lenguajes funcionales híbridos más conocidos son Scala, Lisp,
Clojure, Scheme, Ocaml, SAP y Standard ML.
TAREA #3

LENGUAJE: PROLOG

Símbolos: - X = Y- X \ Y- X == Y- X \== Y- read(X)- get0(X)- get(X)- write(X)- display(X)- put(X)- nl-


tab(X)- skip(a)- see(X)- seeing(X)- seen(X)- tell(X)- telling(X)- told(X)

Sintaxis: Las estructuras se suelen representar por árboles donde el funtor es un nodo los
componentes son los subárboles que cuelgan de dicho nodo. Los hechos son las sentencias más
sencillas. Un hecho es una fórmula atómica o átomo: p(t1, ..., tn)e indica que se verifica la
relación(predicado) sobre los objetos (términos) t1, ..., tn

3. Esqueleto de programa

4. Aplicación por descargar para editar y ejecutar

Programa para editar: SWI-Prolog editor

Para crear un ejecutable existe el predicado qsave_program/2. Este predicado graba el


estado actual del Prolog en el fichero que le indiquemos. La forma de crear el ejecutable será: en
primer lugar, compilar el programa en Prolog y, en segundo lugar, llamar al predicado
qsave_program/2. El ejecutable creado se deberá acompañar siempre de las librerías
adecuadas. En concreto, para Windows, cuando se lleve el ejecutable a otro ordenador, habrá que
copiar también todos los ficheros con extensión dll que se encuentran en el directorio bin del SWI-
Prolog.

5. ¿A qué tipo de paradigma pertenece?

Prolog se enmarca en el paradigma de los lenguajes lógicos y declarativos.

6. Ejemplo de programa escrito en lenguaje “Prolog” (código)

Factorial de un numero:
TAREA #4

LENGUAJE: PYTHON

1.Símbolo

Símbolo Significado Ejemplo Resultado

+ Suma a = 10 + 5 a es 15

- Resta a = 12 - 7 a es 5

- Negación a = -5 a es -5

* Multiplicación a = 7 * 5 a es 35

** Exponente a = 2 ** 3 a es 8

/ División a = 12.5 / 2 a es 6.25

// División entera a = 12.5 / 2 a es 6.0

% Módulo a = 27 % 4 a es 3

 and  elif  global  or


 assert  else  if  pass
 break  except  import  print
 class  exec  in  raise
 continue  finally  is  return
 def  for  lambda  try
 del  from  not  while

2. Sintaxis

Nadie nace aprendido, y como en cualquier otro lenguaje, en Python es necesario empezar de
menos a más, de poquito a poco para conocer a fondo su sintaxis y funcionamiento, llegando a
comprender y manejar a las mil maravillas este lenguaje de programación.
Vamos a analizar su sintaxis básica, recuerda que Python ofrece sencillez y claridad para que no
nos hagamos líos y cualquier programador primerizo pueda utilizarlo sin grandes complicaciones.

Cuando hablamos de la sintaxis en Python nos referimos como en todo lenguaje al correcto uso y
orden de las palabras que utilizamos para comunicarnos. Por ello, en Python también es necesario
cumplir ciertos requisitos a la hora de expresarnos.

De esta manera, se evitan errores de comprensión del intérprete, así que lo primero es aprender
ciertas palabras en inglés, su significado y el uso adecuado dentro del lenguaje.

3. Esqueleto de programa

Python es un lenguaje de scripting independiente de plataforma y orientado a

objetos, preparado para realizar cualquier tipo de programa, desde aplicaciones

Windows a servidores de red o incluso, páginas web. Es un lenguaje interpretado,

lo que significa que no se necesita compilar el código fuente para poder ejecutarlo,

lo que ofrece ventajas como la rapidez de desarrollo e inconvenientes como una

menorvelocidad.

En los últimos años el lenguaje se ha hecho muy popular, gracias a varias razones

como:

La cantidad de librerías que contiene, tipos de datos y funciones incorporadas en

el propio lenguaje, que ayudan a realizar muchas tareas habituales sin necesidad

de tener que programarlas desde cero.

La sencillez y velocidad con la que se crean los programas. Un programa en

Python puede tener de 3 a 5 líneas de código menos que su equivalente en Java o

C.

La cantidad de plataformas en las que podemos desarrollar, como Unix, Windows,

OS/2, Mac, Amiga y otros.

4. Aplicación por descargar para editar y ejecutar

El paquete de instalación de Python, disponible para sistemas de 32 y 64 bits, dispone de ejemplos


y documentación, así como de IDLE, un sencillo entorno de desarrollo para los scripts.

Para ejecutar los archivos .py, el código de sus programas, hace falta instalar el intérprete del
lenguaje.

5. ¿A qué tipo de paradigma pertenece?


Interpretado, interactivo y orientado a objetos.

6. Ejemplo de programa escrito en lenguaje “Python” (código)

Programa que imprima los 25 primeros números naturales:


TAREA #5

LENGUAJE: SCHEME

1.Simbolo

Define, let, apply, set!, cdr, symbol, eq? , eqv? , equal? , string=? , char=? ,
cond, else, if,
2.Sintaxis

Scheme posee una sintaxis reducida comparada a otros lenguajes. Utiliza la notación prefija. Por
ejemplo, si se desea realizar la suma 1+1. Los paréntesis son obligatorios, ya que separan las
instrucciones que serán evaluadas por el intérprete. Para realizar comentarios dentro del código,
se utiliza el ";".

Sintaxis Básica

Expresión -> átomo | lista


átomo -> número | string | identificador | carácter | boolean
lista -> '(' secuencia-expresión ')'
secuencia-expresión -> expresión secuencia - expresión | expresión
función -> ( nombre_función argumento1 argumento 2... argumento n)

3.Esqueleto del programa

4.Aplicación a descargar para editar y ejecutar

Scheme es un dialecto de Lisp creado a mediados de los 70 por Guy Lewis Steele Jr. y Gerald Jay
Sussman, del MIT. Pone énfasis en la elegancia y simplicidad y es mucho más pequeño que la
mayoría de versiones de Lisp. Es muy usado en ambientes académicos y de investigación.

schemers.org es un completo sitio sobre Scheme.

5.A que tipo de paradigma pertenece?

Scheme es un lenguaje que hereda la mayor parte de características funcionales del Lisp,
el lenguaje más importante del paradigma funcional.

6.Un ejemplo de un programa escrito en ese lenguaje


TAREA #6

LENGUAJE: HASKELL

1.Simbolos

(&&) :: Bool -> Bool -> Bool. Conjunción lógica.

(||) :: Bool -> Bool -> Bool. Disyunción lógica.

not :: Bool -> Bool. Negación lógica.

otherwise :: Bool. Función constante que devuelve el valor True.

(+), (-), (*), (/), (^) :: Float -> Float -> Float. Suma, resta, producto, división real y potencia de
exponente entero.

abs, signum, negate :: Int -> Int. Valor absoluto, signo y negación.

(**) :: Float -> Float. Potencia de exponente real

Hugs ([1]) es un intérprete. Ofrece una compilación rápida de los programas y un tiempo


razonable de ejecución. También viene con una biblioteca gráfica muy simple, lo que lo hace
adecuado para quienes lo están aprendiendo. Sin embargo no es una implementación a
despreciar, es una de las más livianas y compatibles.

GHC ([2]): "Glasgow Haskell Compiler" compila a código nativo en una variedad de arquitecturas y
puede también compilar a C. Es, probablemente, uno de los compiladores más populares e incluso
tiene unas cuantas bibliotecas (por ejemplo OpenGL) que, aunque muy útiles, sólo funcionan bajo
GHC.

nhc98 ([3]) es otro compilador con un mejor tiempo de ejecución que Hugs. Esta implementación
se enfocó a minimizar la utilización de la memoria convirtiéndola en una buena opción para
arquitecturas lentas o antiguas.

HBC ([4]) es otro compilador a código nativo de Haskell. Si bien no ha sido actualizado en el último
tiempo sigue siendo bastante útil.

Helium ([5]) es un nuevo dialecto de Haskell. Se centró en ser muy fácil de aprender; por ello, no
incluye soporte para todo el estándar de Haskell, haciendo que no sea totalmente compatible.

2.Sintaxis

A diferencia de los operadores, las funciones se utilizan en notación prefija, es decir, el nombre de
la función se coloca antes de sus parámetros. Los nombres de las funciones sólo pueden contener
caracteres normales, es decir, letras, dígitos, comillas y subrayados. El primer carácter de un
identificador de función no puede ser una letra mayúscula ni un dígito.
También es posible aplicar parcialmente una función, sin suministrarle todos sus parámetros. Esto
genera una nueva función, que puede utilizarse como otra función cualquiera. Esta facilidad es
especialmente útil en presencia de orden superior.

3.Esqueleto del programa

esqueletoes un EDSL básico y seguro para consultas SQL que funciona con persistentbackends
SQL no modificados . Su lenguaje se parece mucho a SQL, por lo que no tiene que aprender nuevos
conceptos, solo una nueva sintaxis, y es bastante fácil predecir el SQL generado y optimizarlo para
su back-end. La mayoría de los tipos de errores cometidos al escribir SQL se detectan como errores
en tiempo de compilación, aunque es posible escribir esqueletoconsultas de tipo comprobado que
fallan en tiempo de ejecución.

persistentes una biblioteca para la serialización de datos de tipo seguro. Tiene muchas clases de
backends, como backends SQL ( persistent-mysql, persistent-postgresql, persistent-sqlite) y
backends NoSQL ( persistent-mongoDB). Si bien persistentes una buena biblioteca para almacenar
y recuperar registros, incluso con filtros, no intenta admitir algunas de las características
específicas de los servidores SQL. En particular, esqueletoes la biblioteca recomendada para los
tipos seguros JOINen persistentservidores SQL. (La alternativa es usar SQL sin formato, pero es
propenso a errores y no ofrece ninguna composturabilidad).

4.Aplicación a descargar para editar y ejecutar.

Haskell, como casi todos los otros lenguajes, viene en dos presentaciones: compilada (compilador)
e interactiva (intérprete). Un sistema interactivo ofrece una línea de comandos donde puedes
experimentar y evaluar expresiones directamente, por lo que es una buena elección para
comenzar.

5.A que tipo de paradigma pertenece?


Funcional, no estricto, modular, fuertemente tipificado

6.Un ejemplo de un programa escrito en ese lenguaje.


TAREA #8

S-ar putea să vă placă și