lunes, 22 de noviembre de 2010

Ruby (puntos Extra)

¿Que es Ruby?

Es un lenguaje de programación interpretado, reflexivo y orientado a objetos, creado por el programador japonés Yukihiro "Matz" Matsumoto, quien comenzó a trabajar en Ruby en 1993, y lo presentó públicamente en 1995. Combina una sintaxis inspirada en Python y Perl con características de programación orientada a objetos similares a Smalltalk.

El lenguaje fue creado por Yukihiro "Matz" Matsumoto, quien empezó a trabajar en Ruby el 24 de febrero de 1993, y lo presentó al público en el año 1995. En el círculo de amigos de Matsumoto se le puso el nombre de "Ruby" (en español rubí) como broma aludiendo al lenguaje de programación "Perl" (perla).

El creador de Ruby dice que está diseñado para la productividad y la diversión del desarrollador, siguiendo los principios de una buena interfaz de usuario. Sostiene que el diseño de sistemas necesita enfatizar las necesidades humanas más que las de la máquina.

Ruby es orientado a objetos y soporta:
  •  Todos los tipos de datos son un objeto, incluidas las clases y tipos que otros lenguajes definen como primitivas, (como enteros, booleanos, y "nil").
  • Las variables siempre son referencias a objetos, no los objetos mismos.
  • Soporta herencia con enlace dinámico, mixins y métodos singleton. 

La sintaxis procedural está soportada, pero todos los métodos definidos fuera del ámbito de un objeto son realmente métodos de la clase Object. Como esta clase es padre de todas las demás, los cambios son visibles para todas las clases y objetos.

Ejemplo

Ejemplo de hola mundo
 
$ irb
irb(main):001:0> puts "Hola mundo"
Hola mundo
=> nil
irb(main):002:0> 1+2
 => 3
Sintaxis
 
La sintaxis de Ruby es similar a la de Perl o Python. 
La definición de clases y métodos está definida por palabras clave. 
Sin embargo, en Perl, las variables no llevan prefijos. 
Cuando se usa, un prefijo indica el ámbito de las variables. 
 
La mayor diferencia con C y Perl es que las palabras clave son usadas para definir bloques de código sin llaves 
 
Aqui les dejo un tutorial de ruby ojala lo lean:
 
Tutorial Ruby

Lenguaje Oz(puntos extra)

¿Que es Oz?

Es un lenguaje de programacion multiparadigma, es decir, incluye paradigmas como programación lógica, funcional, imperativa, orientada a objetos, con restricciones, distribuida, concurrente. Es una buena herramienta para aquellos nuevos programadores que esten sedientos de aprendizaje.

Oz fue originalmente desarrollado en el laboratorio de Programación de Sistemas en la Universidad de Saarland por Gert Smolka y sus estudiantes a comienzos de 1990.

En 1996 el desarrollo de Oz continuó en cooperación con el grupo de investigación de Seif Haridi en el Instituto Sueco de Ciencias de la Computación
Como complemento a la programación multiparadigma, las principales ventajas de Oz radican en la programación con restricciones y la programación distribuida. Debido a su diseño, Oz implementa un modelo de programación distribuido que hace a la red transparente.

Este modelo hace fácil programar aplicaciones abiertas y tolerantes a fallas en el lenguaje. Para Programación con restricciones, Oz introduce la idea de espacios de computación, los cuales permiten búsquedas definidas por el usuario y estrategias de distribución que son ortogonales al dominio de restricciones.

El lenguaje de programación Oz es el interfaz de usuario del sistema de composición musical
Ejemplo

Un ejemplo de un miniprograma en oz el clasico hola mundo, que su sintaxsis seria asi:

declare
{Browse 'Hello World'}

No encontre ningun tutorial para Oz :(

domingo, 21 de noviembre de 2010

Lenguaje GO (puntos extra)

¿Que es GO?

Es un lenguaje de programacion multiparadigmico, GO proviene de la fusión de varios lenguajes de familias de donde desciende, entre ellos el famoso C. Aún asi incorpora elementos de Python así como de la familia de  Pascal/Modula/Oberon entre otros programas dinámicos.

Cabe mencionar que Francis McCabe creó Go! en el año 2003; sin embargo, aún no ha registrado el nombre

Según podemos ver en la web de Go, este proyecto combina el rendimiento y las prestaciones de seguridad propios de un lenguaje compilado como C++ con la velocidad de un lenguaje dinámico como Python.

El proyecto Go, concebido inicialmente para poder escribir de forma optimizada el software que Google utiliza internamente, esta siendo desarrollado, entre otras razones, para dar respuesta a las necesidades de programadores que se posicionan contra la complejidad de sistemas como Java y C++.

La sintaxis del lenguaje de programación Go es muy parecida a la de C.

Ejemplo

El tan famoso Hola mundo

package main
 
import "fmt"
 
func main()
{
  fmt.Printf("Hola, mundo\n")
}
Tutorial
 
Aqui les dejo un tutorial para el lenguaje Go:
 
Tutorial GO

Algol (puntos extra)

¿Que es Algol?

Se denomina Algol a un lenguaje de programación. La voz es un acrónimo de las palabras inglesas Algorithmic Language (lenguaje algorítmico).
 
Fue muy popular en las universidades durante los años 60s, pero no llegó a cuajar como lenguaje de utilización comercial. Sin embargo, Algol influyó profundamente en varios lenguajes posteriores
que sí alcanzaron gran difusión, como Pascal, C y Ada.

Hacia 1965 dos corrientes se distinguieron sobre el tema de un sucesor para Algol. Como resultado se definieron los lenguajes Algol W que es un lenguajeminimalista, rápidamente implementado y distribuido y, por otra parte,Algol 68 que para la época está en la frontera entre un lenguaje para programar en él y un lenguaje para investigar sobre él.

Existian 3 tipos de algol lo cuales eran:
  • Algol
  • Algol W
  • Algol 68


Algol W

Lenguaje elaborado diseñado por Niklaus Wirth y Tony Hoare a partir de los trabajos del grupo ALGOL de la IFIP. Se trata de un lenguaje conciso, simple de implementar, que evita todos los defectos conocidos del lenguaje Algol e incluye sus propias características adicionales.

Algol 68

La definición del lenguaje fue presentada en la reunión del comité ALGOL de la IFIP en 1965. Luego de varios años de revisión del diseño se llegó a una versión definitiva en 1968. Al principal autor es Adriaan van Wijngaarden.

Los objetivos principales de ALGOL 68 son el permitir comunicar algoritmos, el permitir una eficiente ejecución de los mismos en diferentes arquitecturas y el de servir como herramienta para la enseñanza.

Una característica interesante de ALGOL 68 es que su semántica fue definida formalmente antes de ser implementado en base al formalismo llamado gramáticas de dos niveles

Perl (punto Extra)

¿Que es Perl?

Es un lenguaje práctico de extracción y de informes. Es un lenguaje creado por Larry Wall con el objetivo principal de simplificar las tareas de administración de un sistema UNIX, en realidad hoy en día se ha convertido en un lenguaje de propósito general, y una de las principales herramientas de un buen internetero y de un buen webmaster.

Este lenguaje hereda ciertas estructuras de los intérpretes de comandos de UNIX, especialmente el csh, y de otras utilidades estándar, como awk y sed. Aparte de esto, está diseñado para hacer todo lo que hacen cualquiera de ellos y todos ellos juntos, y la mayoría de las veces de forma más simple, comprensible y fácil de depurar (aunque algunas veces no muy fácil de entender). Si alguna vez habeis tratado de escribir un script para el shell, sabéis lo que quiero decir.

Perl es un lenguaje interpretado, aunque en realidad, el intérprete de perl, como todos los intérpretes modernos, compila los programas antes de ejecutarlos. Por eso se habla de scripts, y no de programas, concepto referido principalmente a programas compilados al lenguaje máquina nativo del ordenador y sistema operativo en el que se ejecuta

Un compilador de perl muy utilizado es Active Perl les dejo el link para que los descargen(El que lo desee).

Compilador

Tambien les dejo un tutorial para que lo chequen no es en pdf:

Tutorial Perl

Fortran(Puntos Extra)

¿Que es Fortran?

Es un lenguaje de programación alto nivel de propósito general, imperativo, que está especialmente adaptado al cálculo numérico y a la computación científica

Es uno de los lenguajes más populares en el área de la computación de alto rendimiento y es el lenguaje usado para programas que evalúan el desempeño (benchmark) y el ranking de los supercomputadores más rápidos del mundo. 

Un poco de historiaEste lenguaje procedural fue el primero de alto nivel (1957), desarrollado por IBM para el IBM 704, el cual esta orientado a la eficiencia en la ejecución se creó la definición estándar del lenguaje en el 66.

Existen otras versiones como:
  • FORTRAN 77
  • FORTRAN 90
Tipos de datos soportados:
  • Numéricos (enteros, reales, complejos y doble precisión).
  • Booleanos (logical)
  • Arreglos
  • Cadenas de caracteres
  • Archivos
Fortran no es sensible a mayúsculas y minúsculas. Los nombre de variables tienen de 6 a 31 caracteres máximo y deben comenzar por una letra. Los blancos son significativos.

Aqui les dejo un tutorial de fortran para aque lo chequen:

Tutorial Fortran

Prolog (Puntos Extra)

¿Que es prolog?

Es un lenguaje de programación lógico e interpretado, bastante conocido en el medio de investigación en Inteligencia Artificial. Es un lenguaje de programación simple pero poderoso desarrollado en la Universidad de Marsella como una herramienta práctica para programación lógica.

Desde mi punto de vista, la ventaja principal es la facilidad para programar, ya que se pueden escribir rapidamente y con pocos errores, programas claramente leíbles.

El sistema Prolog es mantenido por el Departmento de Inteligencia Artificial

Un poco de historia

Se trata de un lenguaje de programación ideado a principios de los años 70 en la Universidad de Aix-Marseille (Marsella, Francia) por los profesores Alain Colmerauer y Philippe Roussel. Nació de un proyecto que no tenía como objetivo la implementación de un lenguaje de programación, sino el procesamiento de lenguajes naturales. Alain Colmerauer y Robert Pasero trabajaban en la parte del procesado del lenguaje natural y Jean Trudel y Philippe Roussel en la parte de deducción e inferencia del sistema. Interesado por el método de resolución SL, Trudel persuadió a Robert Kowalski para que se uniera al proyecto, dando lugar a una versión preliminar del lenguaje Prolog a finales de 1971 y apareciendo la versión definitiva en 1972

Prolog se enmarca en el paradigma de los lenguajes lógicos y declarativos, lo que lo diferencia enormemente de otros lenguajes más populares tales como Fortran, Pascal, C o Java.

Ya les habia dejado un tutorial mas abajo, pero les pongo otro para que lo checen ( ingles):

Tutorial Prolog 2