Anda di halaman 1dari 26

INSTITUTO TECNOLOGICO SUPERIOR DE TANTOYUCA

INGENERIA EN SISTEMAS COMPUTACIONALES PROGRAMACION LOGICA FUNCIONAL

LENGUAJE RUBY
DOCENTE: ING. MANUEL HERNNDEZ HERNNDEZ EQUIPO N 5: Animas Guzmn Esperanza Isabel Ramrez Len Edgar Eli Martnez del ngel David Norato Hernndez Nazario Martnez Antonio Gregorio 04-03-14

CONTENIDO
Introduccin Historia Descarga y proceso de instalacin Sintaxis del lenguaje Evaluacin de expresiones Definicin de funciones

Disciplina de tipos
Tipos de datos Ejemplo

Conclusiones
Referencias bibliogrficas

INTRODUCION
Ruby es un lenguaje de guiones (scripts) para una programacin orientada a objetos rpida y sencilla. Al principio puede parecer un poco extrao, pero se ha diseado para que sea fcil de leer y escribir. Ruby es un lenguaje genrico que se puede utilizar en muchos campos: desde procesamiento de texto y programacin web, hasta ingeniera, gentica, y programacin comercial a gran escala.

HISTORIA
El lenguaje fue creado por Yukihiro "Matz" Matsumoto, quien

empez a trabajar en Ruby el 24 de febrero de 1993, y lo present al pblico en el ao 1995.


Desde su liberacin pblica en 1995, Ruby ha atrado devotos

desarrolladores de todo el mundo.


En el 2006, Ruby alcanz reconocimiento masivo, formndose

grupos de usuarios activos en las ciudades ms importantes del mundo y llenando las capacidades de las conferencias relacionadas a Ruby.

DESCARGA PROCESO DE INSTALACION


https://www.ruby-lang.org/ Se muestra la pagina para descargar el lenguaje Ruby.

Una vez descargado el programa lo ejecutamos.

Seleccionamos el lenguaje a utilizar, en nuestro caso elegimos el ingls.

Aceptamos los trminos de contrato de licencia y le damos

siguiente.

Elegimos la ruta donde se instalar el programa y los componentes que queremos que se instalen.

Esperamos a que se termine el proceso de instalacin.

Una vez terminado el proceso de instalacin finalizamos el proceso.

Nos vamos a la barra de inicio y buscamos donde este el programa Ruby ya instalado. Elegimos Interactive Ruby.

Se abre la consola del programa Ruby.

SISTAXIS DE LENGUAJE
La sintaxis de Ruby es similar a la Python. La definicin de clases y mtodos est definida por palabras

clave.
Una de las diferencias entre Ruby y Python es que Ruby

mantiene todas sus variables de instancia privadas dentro de las clases y solo la expone a travs de mtodos de acceso (attr_writer, attr_reader, etc).

A diferencia de los mtodos "getter" y "setter" de otros lenguajes como C++ o Java, los mtodos de acceso en Ruby pueden ser escritos con una sola lnea de cdigo.
Como la invocacin de estos mtodos no requiere el uso de

parntesis, es trivial cambiar una variable de instancia en una funcin sin tocar una sola lnea de cdigo o refactorizar dicho cdigo.

EVALUACIN DE EXPRESIONES
Generalmente denominamos funciones, a las expresiones

matemticas o no, posibles de ser evaluadas. Sin embargo, para simplificar este artculo, las llamaremos sencillamente "expresiones", para no confundirlas con el concepto de funcin en los lenguajes de programacin.
Algunos elementos que pueden formar parte de una expresin

son: valores literales (como 2, "hola" o 5.7), variables, operadores y llamadas a funciones.

EJEMPLO SENCILLO
Escribamos una funcin que calcula factoriales. La definicin

matemtica de factorial es la siguiente:


(n==0) n! = 1 (sino) n! = n * (n-1)!

En Ruby se puede escribir as:


def fact(n) if n == 0 1 else n * fact(n-1) end end

DEFINICIN DE FUNCIONES
La definicin de una funcin en el lenguaje Ruby viene dada por la declaracin de tipo y una o varias ecuaciones, opcionalmente condicionales. Los mtodos en ruby se definen utilizando la palabra reservada def al iniciar la rutina y end al finalizarla.
def Metodo End

Para mandarle parametros, solo debemos escribir entre

parentesis estos, separados por comas.


def Suma(Operando1, OPerando2) Operando1 + Operando2 end

Para especificar que el mtodo retornar algun valor, solo

debemos usar la palabra reservada


return def Suma(Operando1, OPerando2) sum = Operando1 + Operando2 return sum end

Sin embargo, es importante hacer notar que de todas maneras

ruby retorna la ultima expresin evaluada en el mtodo, por lo tanto escribir


def met

return
"Hola" end es igual a def met "Hola" end

DISIPLINA DE TIPOS
En los lenguajes de programacin con disciplina de tipos, cada tipo representa una coleccin de valores (datos) similares. Algunos lenguajes funcionales utilizan el sistema de tipos de Milner, que tiene dos caractersticas principales:
Disciplina

esttica de tipos: los programas bien tipados se pueden representar en tiempo de compilacin. Un programa bien tipados se puede utilizar sin efectuar comprobaciones de tipo en tiempo de ejecucin, estando garantizado que no se producirn errores de tipo durante el cmputo. un programa bien tipado puede incluir definiciones de funciones polimrficas, el polimorfismo permite que una misma funcin se pueda aplicar a parmetros de diferentes tipos, dependiendo del contexto en el que la funcin se utilice.

Polimorfismo:

TIPOS DE DATOS
En Ruby, todo es tratado como un objeto, eso no excluye a los nmeros, en forma general, Ruby cuenta con diferentes clases para manejar cada tipo de nmeros, por ejemplo:
Integer. La clase base de donde derivan todos los enteros. Fixnum. Clase para nmeros enteros, su tamao depende de la

arquitectura de donde se interprete el cdigo, sin embargo, su tamao es eso -1 bit y usa complemento 2 para su representacin en memoria, si un nmero excede el tamao asignado, automticamente se convierte en bignum. .

Bignum. Contiene valores mayores a fixnum, la restriccin

depende de la arquitectura pero pueden guardarse nmeros muy grandes, tanto como de nuestra memoria, si el nmero ingresado cabe en un fixnum, automticamente se convierte a esta clase.
Float. Almacena nmeros con punto flotante con la arquitectura

de doble precisin nativa.


Rational. Almacena nmeros racionales, es decir, nmeros con

un valor de numerador y un denominador.

EJECUCIN DEL EJEMPLO

CONCLUSION
El lenguaje Ruby mas que nada fue diseado para la productividad y la diversin del desarrollador, siguiendo los principios de una buena Interfaz de usuario. Sostiene que el diseo de sistemas necesita enfatizar las necesidades humanas ms que las de la mquina. Ruby es totalmente libre. No slo gratis, sino tambin libre para usarlo, copiarlo, modificarlo y distribuirlo. En Ruby, todo es un objeto. Se le puede asignar propiedades y acciones a toda informacin y Cdigo.

REFERENCIAS BIBLIOGRAFICAS
https://www.ruby-lang.org/es/about/

http://es.wikibooks.org/wiki/Programaci%C3%B3n_en_Ruby
http://es.wikipedia.org/wiki/Ruby

Gracias por su atencin prestada!