Anda di halaman 1dari 6

INSTITUTO TECNOLGICO DE TUXTLA GUTIRREZ

INGENIERA EN SISTEMAS COMPUTACIONALES

INVESTIGACIN DE LENGUAJES DE PROGRAMACIN

ALUMNO:
PREZ CAMACHO JESS ASMETH 12270757

PROGRAMACION LGICA Y FUNCIONAL

GRUPO: S8A

CATEDRTICO:
M.C. GALDINO BELIZARIO NANGO SOLS

Carretera Panamericana Km 1080


C. P. 29050. Apartado Postal: 599
Tel. 6150380 ext. 321
Tuxtla Gutirrez Chiapas

TECNO L GICO NACIONAL DE MXICO


INSTITUTO TECNO L GICO DE TUXTLA GUTIRREZ

Ruby
La historia de Ruby y sus caractersticas
Rub naci en 1993, pero se present al pblico por primera vez slo en 1995 por su creador: Yukihiro
Matsumoto, conocido mundialmente como Matz. Es un lenguaje orientado a objetos con una
tipificacin fuerte y dinmica. Curiosamente, es uno de los nicos idiomas nacidos fuera del eje de
los Estados Unidos - Europa logr gran xito comercial.
Una de sus principales caractersticas es la expresin que tiene. Tuvo como objetivo desde el principio
fue un lenguaje muy sencillo de leer y entender, para facilitar el desarrollo y el mantenimiento de los
sistemas escritos con ella.
Ruby es un lenguaje interpretado, y como tal, requiere la instalacin de un intrprete en su mquina
antes de ejecutar cualquier programa.
Intrprete
Antes de convertirse en Rub lenguaje popular, slo haba un intrprete disponible: escrito por el
propio Matz en C. Es un intrprete sencillo, sin la gestin de memoria muy complejo, o intrpretes
caractersticas modernas tales como la compilacin en tiempo de ejecucin (conocida como JIT). Hoy
en da la versin ms extendida es la 2.0, tambin conocido como YARV (Sin embargo, otro de rubes
VM), como la base de una mquina virtual con caractersticas ms avanzadas.
La mayora de las distribuciones de Linux tienen un paquete de las ltimas versiones estables listas
para instalarse.
RubyGems
Ruby tiene un gestor de paquetes bastante avanzada, flexible y eficiente: RubyGems . Las gemas
pueden ser vistos como libreras de cdigo reutilizable Ruby, que incluso puede contener algo de
cdigo nativo (C, Java, .NET). Son anlogos a los tarros en el entorno de Java, o ensamblados en el
mundo .Net. RubyGems es un sistema gestor de paquetes comparable a cualquier parte del mundo *
NIX, como .debs el apt-get , las revoluciones por minuto de yum , entre otros.
Bndler
Para desarrollar nuevas aplicaciones usando Ruby, tomamos nota de que se requiere un nmero de
caractersticas - la lectura y anlisis de JSON, realice la autenticacin del usuario, entre otras cosas.
La mayora de estas caractersticas se ha implementado en alguna joya , y tomar ventaja de estas
caractersticas slo tiene que colocar la gema en nuestra aplicacin.
Intrpretes de Ruby
Con la popularidad del lenguaje Ruby, especialmente despus de la subida de Ruby on Rails,
implementaciones alternativas de la lengua empezaron a surgir. La mayora de ellos siguen una
tendencia natural a estar basado en una mquina virtual en lugar de ser intrpretes simples. Algunas
implementaciones tienen que completar los compiladores, que convierten el cdigo Ruby en un
lenguaje intermedio para ser interpretado por una mquina virtual.

TECNO L GICO NACIONAL DE MXICO


INSTITUTO TECNO L GICO DE TUXTLA GUTIRREZ

La principal ventaja de las mquinas virtuales es ms fcil de soportar diferentes plataformas.


Adems, tener cdigo intermedio permite la optimizacin del cdigo de tiempo de ejecucin,
realizado por el JIT .
JRuby (http://jruby.org)
JRuby fue la primera implementacin alternativa completa de la versin 1.8.6 de Ruby y es la
principal aplicacin del lenguaje Java para la JVM. Con el tiempo se gan compatibilidad con 1.8.7
y 1.9.3 versiones de la misma aplicacin.
Una de sus principales ventajas es la interoperabilidad con el cdigo Java existente, as como sacar
el mximo provecho de una de las plataformas de ejecucin de cdigo ms maduros (recolector de
basura, subprocesos nativos, etc.).
IronRuby (http://ironruby.net)
La comunidad .Net tambin no pas por alto el xito de la lengua y patrocin el proyecto IronRuby,
que fue mantenida por la Microsoft . IronRuby fue uno de los primeros proyectos de cdigo
verdaderamente abiertas dentro de Microsoft. En 2010, Microsoft dej de apoyo del proyecto y la
versin actual de IronRuby, 1.1.3, slo se implementa a Ruby 1.9.2.
Rubinius(http://rubini.us)
Creado por Evan Phoenix, Rubinius es un proyecto que ha recibido ms atencin por parte de la
comunidad Ruby, tienen el objetivo de crear una implementacin de Ruby con la parte ms ancha del
cdigo Ruby. Por otra parte, trajo ideas de mquinas virtuales Smalltalk, que tiene un conjunto de
instrucciones (cdigo de bytes) en s e implementado en C / C ++. El Rubinius est siempre
actualizado con las ltimas versiones de Ruby y funciona en sistemas Unix / Linux y MacOS X.
Windows hasta la fecha no se apoya en ella.
RubySpec (http://rubyspec.org/)
El proyecto Rubinius tiene una enorme cantidad de pruebas, escrito en Ruby, que alent la iniciativa
para especificar el lenguaje Ruby. El proyecto RubySpec ( http://rubyspec.org/ ) es un acuerdo entre
los distintos ejecutores del lenguaje Ruby para especificar las caractersticas del lenguaje Ruby y el
comportamiento, a travs de un cdigo ejecutable, el cual funciona como un TCK ( kit de prueba de
compatibilidad ).
RubySpec proviene del conjunto de la unidad de pruebas del proyecto Rubinius escritos con una
versin mnima del RSpec, conocido como MSpec . El RSpec es una herramienta para describir las
especificaciones de estilo predicados por el desarrollo del comportamiento Driven.
Rub Enterprise Edition
Para mejorar el rendimiento de aplicaciones Rails y disminuir la cantidad de memoria utilizada, Ninh
Bui , Hongli Lai y Tinco Andringa (de Phusion) modificaron el intrprete de Ruby y liberados por el
nombre de Rub Enterprise Edition .
Los principales cambios en REE estaban en el comportamiento de la recoleccin de basura, lo que es
trabajar con la funcin de copia en escritura disponible en la mayora de los sistemas operativos
basados en UNIX (Linux, Solaris, etc.).

TECNO L GICO NACIONAL DE MXICO


INSTITUTO TECNO L GICO DE TUXTLA GUTIRREZ

Otro cambio importante es la asignacin de memoria intrprete, utilizando libreras de famosos como
tcmalloc . Los desarrolladores de Phusion ofrecen cambios (parches) para entrar en la aplicacin
oficial de Ruby.
La aplicacin oficial de Rub, lanzado en la versin 1.9, con nombre en cdigo YARV , aade algunas
nuevas construcciones del lenguaje en s mismo, sino que tambin resuelve muchos de los problemas
abordados antes de la REE .

https://www.caelum.com.br/apostila-ruby-on-rails/a-linguagem-ruby/#2-5-outrasimplementacoes-de-interpretadores-ruby

Scala
El lenguaje Scala (Scalabel Language) es un lenguaje de programacin de propsito general basado
en dos paradigmas: funcional y orientado a objetos. Se basa en gran medida en Java, sino que incluye
una serie de requisitos, los lenguajes funcionales retiran principalmente a abandonar el desarrollo de
ms sencillo que en las aplicaciones Java. Scala se ejecuta en la mquina virtual de Java, y tiene la
ventaja de permitir el uso de mtodos y clases Java en un programa de Scala, y viceversa.
Otras caractersticas del lenguaje Scala son:
Tipos de inferencia : En Scala no es necesario declarar explcitamente el tipo de variables, debido a
que el propio compilador infiere los tipos listos para usarlos, lo que aporta una mayor flexibilidad en
la programacin;
La coincidencia de patrones : Funciona ms o menos como un switch / case, pero es mucho ms
potente, que permite la comparacin utilizando expresiones regulares;
Rasgos : Es un concepto de mltiples lenguajes de programacin orientado a objetos, que se aadi
en la Scala, as, y es ms o menos como una interfaz Java, sino que permite que los mtodos que
debern realizarse, no slo declaradas;
funciones de orden superior : En Scala funciones son objetos, por lo que se pueden utilizar de muchas
maneras, por ejemplo, pasarlas como parmetros a otras funciones.
Objetos : En Scala todo es un objeto, incluyendo los tipos bsicos, como los enteros y los flotadores,
e incluso funciones.
El lenguaje Scala est siendo utilizado en varias compaas, como Twitter, FourSquare y GitHub, y
varios proyectos de cdigo abierto famosos como Spark Apache.
El sitio oficial de la lengua Scala
http://www.scala-lang.org/
Scala cdigo de idioma en GitHub

TECNO L GICO NACIONAL DE MXICO


INSTITUTO TECNO L GICO DE TUXTLA GUTIRREZ

https://github.com/scala
Descargar Idioma Scala
http://www.scala-lang.org/download/
IntelliJ para Scala
https://www.jetbrains.com/idea/features/scala.html
Eclipse IDE para Scala
http://scala-ide.org/
http://www.devmedia.com.br/conheca-a-linguagem-scala/32850

Go

Go es un proyecto de cdigo abierto, distribudo bajo una licencia tipo BSD.


Go es un lenguaje de programacin concurrente y compilado inspirado en la sintaxis de C. Ha sido
desarrollado por Google y sus diseadores iniciales son Robert Griesemer, Rob Pike y Ken
Thompson. Actualmente slo est disponible para los sistemas operativos Windows, GNU/Linux y
Mac OS X.2 3
Go usa una sintaxis parecida a C por lo que los programadores que hayan usado dicho lenguaje se
sienten muy cmodos con l.
Go usa tipado esttico (statically typed) y es tan eficiente como C.
Go tiene muchas de las caractersticas y facilidad de lenguajes dinmicos como Python
An siendo un lenguaje diseado para la programacin de sistemas, provee de un recolector de basura,
reflexin y otras capacidades de alto nivel que lo convierten en un lenguaje muy potente.
Go admite el paradigma de programacin orientada a objetos, pero a diferencia de los lenguajes de
programacin ms populares no dispone de herencia de tipos y tampoco de palabras clave que denoten
claramente que soporta este paradigma. Otro detalle que puede resultar confuso es que la definicin
de un tipo ("clase") se realiza por medio de declaraciones separadas (interfaces, structs, embedded
values). Go permite el uso de delegacin (a travs de embedded values) y polimorfismo (por medio
de interfaces).
Go, al igual que C y C++, es un lenguaje compilado con algunas caractersticas peculiares.
https://go-tour-es.appspot.com/#1

TECNO L GICO NACIONAL DE MXICO


INSTITUTO TECNO L GICO DE TUXTLA GUTIRREZ

http://www.taringa.net/comunidades/programacion/293370/Lenguaje-GO.html
http://lenguajego.blogspot.mx/p/requerimientos-para-instalarlo.html
https://groups.google.com/forum/#!msg/golang-spanish/DQbxXE8-W3Q/T-AIfkyGY0EJ

Anda mungkin juga menyukai