martes, 17 de abril de 2007

T32-Turismo

Aqui se hace la entrega de la ultima tarea para el parcial 3.

Turismo.PRO

Es una simulacion para dar consejos de que lugares se pueden visitar en el edo. de Chihuahua. La consulta se realiza de la siguiente forma:

g(preferencias(temporada,presupuesto,civilizacion),R).

donde tenemos que:

temporada:
  • invierno
  • verano
  • primavera
  • otono
presupuesto:
  • 5000
  • 6000
  • 7000
  • 8000
  • 9000
  • 10000
civilizacion:
  • urbana
  • rural

martes, 27 de febrero de 2007

L14-PHP

Aqui se presenta el codigo que se utilizo en la tarea anterior de Lada Nacional programado en Ruby. Esta vez se programo en PHP Orientado a objetos.

Link

jueves, 22 de febrero de 2007

L13-LADA

Aqui esta profe la liga de la nueva version del programa que pidio.

Sinceramente batallamos mucho, pero aqui esta...

Nota: Batallamos es por que lo hicimos entre varios, pero cada quien son su programa :P

Liga

viernes, 16 de febrero de 2007

L12-BOOKS

Programacion funcional.- La Programación funcional declarativa basado en la utilización de es un paradigma de programación de funciones matemáticas.

Paradigmas de programacion funcional, tiene una reducida lista de programas que se apegan a este tipo de paradigma, y que son:

  • Scheme
  • Earlang
  • Haskell
  • Perl
  • Mathematica
  • Maple
  • Common Lisp
  • Python
  • Ruby
  • Smalltalk
  • Scala
  • OCaml
  • Cold Fusion
  • Miranda
  • Standard ML
  • R
  • J
  • K
  • XSLT
  • APL
  • FP
  • ISWIN
A continuacion les muestro una lista de fichas bibliograficas de los libros encontrados en la biblioteca de la institucion.


Autor Wolfram, Stephen.
Titulo The mathematica book / Stephen Wolfram.
Pie impren Champaign, IL : Wolfram Media ; New York : Cambridge University Press, c1999.
book jacket
Ubicación Clasificación Mensaje Estatus
CHI GENERAL QA76.95 .W65 1999
DISPONIBLE

Edicion 4th ed.
Descrip. xxvi, 1470 p. : il. (algunas col.) ; 24 cm.
Notas Incluye índice.
Materia Matemática (Archivo de computadora).

Matemáticas -- Procesamiento de datos.

Mathematica (Computer file).

Mathematics -- Data processing.
ISBN 1579550045 (Wolfram Media)

0521643147 (Cambridge)

Autor Winston, Patrick Henry
Titulo LISP
Pie impren Aergentina : Addison Wesley , 1991
book jacket
Ubicación Clasificación Mensaje Estatus
CHI GENERAL QA76 73 L23 WS56 1991
DISPONIBLE

Edicion 3a Ed
Descrip. xxiii, 654 p
Materia LISP -- Lenguaje de programación
Autor alt Paul Horn, Bethold Klaus coaut
ISBN 0201629372


Autor Lutz, Mark
Titulo Learning Python / Mark Lutz and David Ascher
Pie impren Sebastopol, CA : O'Reilly, c2004
book jacket
Ubicación Clasificación Mensaje Estatus
CHI GENERAL QA76.73.P98 L8 2004
DISPONIBLE

Edicion 2nd ed
Descrip. xxvi, 591 p. : ill. ; 24 cm
Bibliografia Includes index
Materia Python (Computer program language)

Python (Lenguaje de programación)
Autor alt Ascher, David
ISBN 0596002815

Para tener otras referencias de otros libros visite el link: Programing Languages.

jueves, 15 de febrero de 2007

L10-TOP10

Iniciando el año, al igual las estadísticas dan inicio para dar a conocer a los usuarios que es lo más usado y que es lo que ya esta descontinuado. Actualmente ya existe un análisis de lo que esta a la vanguardia en lo que son los Lenguajes de Programación para este año 2007, en la pagina de TIOBE Software.

Me di a la tarea de investigar otros sitios donde pudieran darme un poco mas de reseñas de lo que es esta gran lista de lenguajes de programación del año. Desgraciadamente me encontré con muchas paginas que solo daban datos de los resultados estadísticos de TIOBE Software. De los pocos links que no redundaron en la búsqueda son:

Si estas interesado en la historia sobre los TOP 10 de los lenguajes de programación te recomiendo que visites las siguientes paginas:

Cabe mencionar que no solo encontré sitios donde dan una lista de los lenguajes de programación mas usados, si no también como un dato curioso encontré una serie de paginas donde dan una reseña de los lenguajes mas odiados. Los sitios son:

Espero que realmente estos sitios sean de ayuda para tener un conocimiento general de la popularidad y las tendencias de los lenguajes de programación. Cabe mencionar que algunos sitios mencionan que no es importante saber el lenguaje que esta de moda, lo que tienen la ultima palabra son las empresas que obviamente nos pagan por saber programar el lenguaje que para ellos es funcional, como podemos ver en el siguiente sitio donde nos muestran los mas pagados en el area de Tecnologías de la Información: Market Data – IT Contract Rates.

Gracias!!!

martes, 30 de enero de 2007

L04-Ruby


A continuación se mostrara cierta sintaxis que se tiene en el lenguaje de Ruby comparada con el lenguaje de C++. Cabe mencionar que el traductor que se utilizo fue Ruby 1.8.5 version Windows.

¿Como se genera un objeto?
En C++
Circle x;
x = Circle();

En Ruby
# se puede de dos formas:

circle1 = Circle.new

circle2 = Circle.new()

¿Como son los condicionales?
En C++
if ( x == y ){ z++; }

En Ruby
#suponemos que ‘x’, ‘y’ y ‘z’ son numeros enteros
if x == y
z = z + 1
end

¿Cómo son los ciclos?
En C++
int z;
for( i=1; i <>

En Ruby
i = 1
z = 0
loop do
z = z + i
i = i + 2
break if i > 19
end

¿Cómo son los arreglos?
En C++
int x[ 5 ]={ 2, 4, 7 };
z = x[ 0 ];

En Ruby
x = [ 2, 4, 7 ]
z = x[0]

¿Cómo son las cadenas?
En C++
char *s = "Hola";
z = strlen( s );

En Ruby
s = “Hola”
z = s.length

¿Cómo se llama un metodo?
En C++
Circle x;
x = Circle( 6 ); //Se asevera que el 6 es el radio.
return x.area();

En Ruby

circle3 = Circle.new(6)
return circle3.area

Al igual, si usted quiere aprender mas sobre la sintaxis de Ruby puede visitar los siguientes enlaces que me sirvieron mucho como guia:

Si se esta interesado en saber mas sobre comparaciones de Ruby con otros lenguajes, se puede visitar el siguiente links:

También si es de su interes obtener un interprete de Ruby, aqui se le anexa la direccion donde se puede Descargar.


Espero que sea de mucha ayuda esta informacion. Gracias!!!!

domingo, 21 de enero de 2007

L03-SMALLTALK

A continuación se mostrara cierta sintaxis que se tiene en el lenguaje de Smalltalk comparada con el lenguaje de C++. Cabe mencionar que el traductor que se utilizo fue Dolphin Smalltalk X6 Free Community Edition, ya que este cuenta con un tutorial para principiantes ademas de contar con un gran Glosario de todas las clases y sus metodos que contiene.

¿Como se genera un objeto?
En C++
Circle x;
x = Circle();
En Smalltalk
x := Circle new.

¿Como son los condicionales?
En C++
if ( x == y ){ z++; }
En Smalltalk
z := 0.
(x = y) ifTrue: [ z := z + 1].

¿Cómo son los ciclos?
En C++
int z;
for( i = 1; i <>
En Smalltalk
z := 0.
1 to: 19 by: 2 do: [:i |
z := z + i.
].

¿Cómo son los arreglos?
En C++
int x[ 5 ]={ 2, 4, 7 };
z = x[ 0 ];
En Smalltalk
array1 := #(2 4 7 nil nil).
array2 := array1 at:1.

¿Cómo son las cadenas?
En C++
char *s = "Hola";
z = strlen( s );
En Smalltalk
s := 'Hola'.
str := s size.

¿Cómo se llama un metodo?
En C++
Circle x;
x = Circle( 6 ); //Se asevera que el 6 es el radio.
return x.area();
En Smalltalk
w := Circle new.
w radius: 6.
^w radius.

"El metodo en si de area() no existe en clase Circle en Smalltalk por lo tanto solo se muestra la llamada a un metodo y como se regresa el valor dado de esa llamada. Si se desea obtener el area solo es cuestion de hacer lo siguiente: ^ (w radius squared)*3.141592653"

También se agrego el archivo que se hizo para poder realizar las pruebas, esto con el fin de saber si la sintaxis estaba correcta. Solo es cuestion de abrirlo con Dolphin y seleccionar las lineas deseadas para ejecutar, ya que esten seleccionadas dar Ctrl+D y automáticamente después de la ultima linea mostrara el resultado. (enlace a tarea1_lenguajes) (otros codigos)

Al igual, si usted quiere aprender mas sobre la sintaxis de este lenguaje puede visitar los siguientes enlaces que me sirvieron mucho como guia:

Si se esta interesado en saber mas sobre comparaciones de Smalltalk con otros lenguajes, se puede visitar los siguientes links:

También si es de su interes obtener Dolphin Smalltalk X6, aqui se le anexa la direccion donde se puede Descargar. Cabe mencionar que si se desea obtener la licencia Profesional se tiene que pagar, pero si solo es de estudio al momento de instalarlo y ejecutarlo solo dele click al boton que dice "Apply for Community Edition Serial Number", automaticamente le pedira un correo electronico para enviarle el codigo de desbloqueo.


Espero que sea de mucha ayuda esta informacion. Gracias!!!!

jueves, 18 de enero de 2007

L02-SMALLTALK

Smalltalk es un lenguaje puro orientado a objetos simple. Este lenguaje influencio a la mayoria de los lenguajes modernos orientados a objetos, apesar de que estos hayan perdido la elegancia y la simplicidad de Smalltalk

La sintaxis de Smalltalk es muy simple:
  • Todo es un objeto.
  • Los objetos se comunican entre si por "Message Passing" (envió de mensajes).
  • Las clases describen por medio de estados (variables) y comportamiento (métodos) los objetos que estas mismas generan.
  • Cuando un objeto recibe un mensaje, el método que le corresponde busca en la misma clase o en la superclase del que recibe el mensaje.
  • Los métodos son públicos.
  • Las variables de instancia son privadas.
  • Las clases tienen herencia.
NOTA: El concepto anterior fue traducido de la pagina original (link)

En la actualidad existen muchos lenguajes de programacion orientados a objetos, pero todos ellos han sido una derivación o como anteriormente se dijo fueron inspirados en el lenguaje de Smalltalk; pero De donde y como surgió Smalltalk? Esto podemos saberlo visitando las siguientes direcciones que encontre mientras buscaba algo referente a este lenguaje de progracion:

  • The Early History of Smalltalk escrito por Alan C. Kay Creador de Smalltalk, este libro habla de como se baso para crear este lenguaje asi de como son los fundamentos y las bases del mismo.
  • The History of Smalltalk publicado en la pagina de Smalltalk, este articulo nos muestra una linea del tiempo acerca de la historia del lenguaje.
Tambien, durante la investigacion se encontraron diferentes sitios de interes acerca de este lenguajes como son:

  • Companies that use Smalltalk, esta pagina nos da una idea de lo importante de Smalltalk y del impacto que ha tenido en las empresas en el tiempo.
  • Programando con Smalltalk libro, este libro esta disponible en PDF para todo el publico en general no es necesario pagar una cuota para poder bajarlo (Descargalo). Aqui vienen muchos ejemplos para programar en Smalltalk.
  • Stef's Free Online Smalltalk Books, esta es una gran base de datos de varios libros que estan al alcance del publico. Aqui tambien existen varios libros que contienen muy buenos ejemplos.
  • Versions of Smalltalk, aqui podemos ver una gran variedad de versiones que se han hecho al paso del tiempo del este lenguaje. Son al rededor de 27 versiones de este lenguaje, Actualmente no se pudo saber cuantas existen pero creo que estas son mas que suficientes para darnos una idea de la evolucion de este lenguaje.
Para la gente que este interesada en aprender y poner en practica ejemplos de Smalltalk, se encontro este sistema y un interprete que son del dominio publico, al igual de una Base de Datos con informacion de herramientas para el desarrollo de progamacion de Smalltalk:

  • Squeak es un sistema gratuito y de código abierto con licencia Apple en cuyo desarrollo toman parte los mismísimos "padres" de Smalltalk, Alan Kay y Dan Ingalls. Existen versiones para Windows, Unix, Macintosh y otras. (Descargalo)
  • SmallWord es un intérprete de dominio público de Little Smalltalk.
  • Smalltalk Development and Tools. Base de datos de herramientas para Smalltalk.
  • Varios ejemplos en lenguaje de Smalltalk.
Realmente espero que este articulo no haya sido demaciado largo, la igual de que haya sido de utilidad para la gente interesada. Gracias

domingo, 14 de enero de 2007

Busqueda Exhaustiva 2

En estos momentos se ha agregado un tutorial interactivo mas a la lista de la gran busqueda que se ha estado realizando desde la semana pasada. El nuevo tutorial es del lenguaje de programacion Lisp.

En este tutorial la mayoria se trata de puro texto, pero al final de cada leccion (que en total son 6 lecciones) tienen una seccion llamada "Self-defined Functions", que esta seccion esta dividida en cada uno de los subtemas de la leccion que anteriormente se estudiaron, y dentro de estas secciones estan diferentes temas que al momento de entrar en ellos se tienen diferentes funciones o palabras con un enlace a una pagina donde se cuenta con un TextArea para poner el codigo de la funcion. Al momento de programar esto se le puede dar click al boton que dice Eval.

En la pagina de este tutorial se pude un usuario y un password, si no se esta registrado solo es cuestion de poner el usuario y password deseado, y automaticamente la pagina lo manda a una que le pregunta si es nuevo usuario y solo le pide que confirme el password y que de un correo electronico valido. Peace of cake!!!

Tutorial link Lisp (English Version)

Tambien se encontro otro tutorial, pero este no sera de mucha ayuda ya que el servidor a donde se envian las respuestas que el usuario va contestanto esta fuera de servicio, o mas bien no existe segun la Internet. Pero vale la pena ver el tutorial, este minitutorial es del lenguaje de programacion NESL espero realmente que les agrade y les pueda servir de algo.

Tutorial link NESL

Bye!!!

viernes, 12 de enero de 2007

Saludos Tardios =)

A pesar de ser este mi segundo Post en mi Blog, me di la tarea de darles la mas cordial y calurosa bienvenida a lo que es este mi espacio.

Este Blog sera usado con el fin de llevar a cabo una documentación de cada tarea, proyecto, búsqueda e investigación que se lleve a cabo durante la clase Lenguajes de programacion que actualmente estoy cursando. Al igual puede existir la posibilidad de Postear algo fuera de esta materia pero que este dentro de mis materias en curso, o de algo realmente interesante que me tope por la Internet y sienta deseos de compartirlo.

Espero pronto sus comentarios, quejas y/o sugerencias en cuanto a este Blog.

Gracias!!!!

Busqueda Exhaustiva

Despues de tanto indagar por la Internet buscando tutoriales interactivos de programacion como el del lenguaje de programacion llamado Ruby que fue dado a conocer en clase de Lenguajes, pude obtener la direccion de 2 tutoriales de lenguajes de programacion que son C# y XML.

Los pasos que se tienen que seguir para poder ver los tutoriales es solo seleccionar en la columna de la izquierda el tema de interes en el caso de XML. Despues lo llevara a una pagina donde puede seleccionar un subtema de interes.

En estos tutoriales el visitante puede programar dentro de los TextArea que se encuentran a la derecha; al termino de la programacion se le da click al boton Run que se encuentra a la esquina superior derecha, o en el caso de XML se le da click al boton Enviar Consulta.

Por lo pronto, estas son las ligas para cada uno de los tutoriales mientras se seguiran buscando otros tutoriales interactivos:

link Tutorial C#
link Tutorial XML

Espero que estos tutoriales sean de mucha ayuda para la gente que quiere estar en constante aprendizaje. Bye!!!!