Los objetos se comportan como seres vivos, en el sentido de que no aceptan cualquier mensaje, sino que reaccionan adecuadamente sólo a ciertos mensajes. Luego esos organismos vivos se organizan (o mejor dicho se autoorganizan) para lograr propósitos superiores sin dejar de lograr sus propósitos individuales. Eso aún no se ha logrado en Smalltalk que yo sepa, sin embargo si miras sistemas como Spring, las relaciones entre los objetos son lo más configurables posibles, lo que es un paso en la dirección correcta. Quizás algún día los objetos se autoorganicen, mientras tanto la inyección de dependencias está bien.

Hay un par de ejemplos se sistemas emergentes en Squeak, a mi particularmente me gustaba el de las hormigas y el hormiguero.

Las hormigas solo cumplen determinado numero (creo que eran 3) reglas. Si cada una cumple estas reglas bajo determinados parametros, aparece el sistema emergente que es el hormiguero. De heho en hormiguero no esta "programado" es un emergente del comportamiento de las hormigas. Ninguna hormiga es conciente del emergente. Tambien se prodrian combinar diferentes emergentes para lograr un emergente mas complejo.

No tengo el link para este sistema pero quiezas alguien se acuerde.

Hormigas:
1. Caminar al azar si no hay rastro de feromona.
2. Si encuentro rastro de feromona serguirlo.
3. Encuentro comida --> soltar feromona y volver al origen.

Parametros para lograr el emergente:
* Cantidad de hormigas.
* Velocidad de disipacion de la feromona.
* Expancion de la feromona cuando de suelta.

El ejemplo grafico estaba buenisimo. Si alguien lo tiene paselo.

Saludos Bruno

Responder a