martes, 27 de febrero de 2007

L15-DECL

En este ejercicio usamos un interprete de Prolog hecho en Ruby, para ver los resultados de nuestra investigacion consultar el blog de mi companero de equipo Miguel Solis en: http://masdsolis.blogspot.com

lunes, 19 de febrero de 2007

L12-BOOKS

A continuacion presento los libros que encontre en mi busqueda:

Para la programacion concurrente:
Concurrent programming in Java: design principles and Patterns
Doug Lea, Addison-Wesley, 2000
-----------------
Concurrent programming: principles and practice
Gregory R. Andrews, Benjamin/Cummings Pub. Co. 1991
-----------------
Principles of concurrent and distributed programming
M. Ben-Ari, Prentice-Hall, 1990
-----------------
Concurrent Programming: Illustrated with examples portal, Modula-2 and ADA
Andre Schiper, Halsted Press 1988

Ahora para la programacion dataflow, no habia libros especificamente de eso, pero si habia uno sobre el lenguaje de programacion LabVIEW que es un lenguaje basado en ese paradigma:
- Learning with LabVIEW 7 express
Robert H. Bishop, Pearson Prentice Hall, 2004

jueves, 15 de febrero de 2007

L11-RVG

Estoy tratando de hacer funcionar el codigo de ruby para usar el RMagick pero me dice q falta el CORE dll, al parecer es que tengo q reiniciar el editor para que agarre la instalacion. Seguire intentando.

L10-TOP10

Seguimos con el tema de los lenguajes mas populares, a continuacion encontre un pagina con unas estadisticas sobre lenguajes, poco usuales pero interesantes si las vemos, habla por ejemplo de cual es el lenguaje mas buscado en Google, o cual es por el que hay mas trabajos, etc. Para ver el articulo y las graficas entrar en: http://www.dedasys.com/articles/language_popularity.html :)

L10-TOP10

En esta ocasion hablaremos sobre los 10 lenguajes de programacion mas importantes en la actualidad, en el articulo "10 Programming Languages You Should Learn Right Now" se habla de los 10 lenguajes de programacion mas importanes ya por ser tecnologias en crecimiento y porque son los que mas trabajos y especialistas demandan las companias. Este articulo originalmente nos lo proporciono Carlos Ventura a los ISCs e ITICs para que lo tomaramos en cuenta. El top ten es: PHP, C#, AJAX, JavaScript, Perl, C, Ruby, Java, Python, Visual Basic .NET. Para ver el articulo completo ver la liga: http://www.eweek.com/article2/0,1895,2016415,00.asp

lunes, 29 de enero de 2007

L04-RUBY

A continuacion se presentan diferentes aspectos de sintaxis del lenguaje de programacion Ruby:

- Como se genera un objeto?
song = Song.new(atributos)

- Como son los condicionales?
If(expresion)
codigo
else
codigo
end
------------------
Codigo if(expresion)
Codigo unless(expresion)
------------------
(expresion) ? Si verdadero : Si falso
------------------
case variable
when rango then codigo
end

- Ahora veremos como son los ciclos:
while ()
codigo
end
-----------------
operacion while()
-----------------
begin
Codigo
end while()
-----------------
operacion until ()
-----------------
loop do
codigo
end
-----------------
codigo do codigo end
-----------------
for variable in rango
end

- Ahora vienen los arreglos:
[elem,elem,elem]
-----------------
a = Array.new
a<<'elemento'<<'elemento2'
a[0] = 3
-----------------
Array.new(Numero de elementos, elemento a insertar)

- Los Strings se usan de la siguiente manera:
'Hola mundo' o "Hola"
-----------------
String.new('cadena')

-Como se define un metodo:
def nombremetodo(parametros)
Codigo
end

def nombremetodo
codigo
end

Espero que les sea interesante lo que encontre.

sábado, 20 de enero de 2007

L03-SMALLTALK

A continuacion esta lo que encontre sobre los comandos de Smalltalk que se pidieron en la tarea, se uso el Dolphin Smalltalk como interprete, el cual cuenta con tutoriales muy utiles para aprender el lenguaje.
Para crear un objeto en Smalltalk, pongamos comoejemplo un circulo, se utiliza la siguiente sintaxis:circulo := Circle new.

Para poner un If se hace:(expresion) ifTrue: [codigo]ifFalse: [codigo]

Para hacer ciclos se puede:
numero timesRepeat [codigo].
[expresion] whileTrue: [codigo]
[expresion] whileFalse: [codigo]
NUmero to: numero do:[codigo]
numero to: numero by: numero do:[codigo]

Para declarar arreglos se hace asi:
ArrayedCollection variableSubclass: #Array
instanceVariableNames: ''
classVariableNames: ''
poolDictionaries: ''

Las cadenas simplemente se definen asi: 'Hola mundo'

Un metodo se manda llamar:
animal correr.
animal correr:'rapido'.