Hasta donde sé para el caso de Smalltalk, todo es asíncrono. De hecho para hacer que no sea asíncrono hay que hacer algún tipo de esfuerzo.
Por ejemplo para ejecutar un ciclo: [ condicion ] whileTrue: [ bloque ]. El bloque por lo tanto se ejecuta de manera asíncrona (en la práctica cada ejecución del bloque no es asíncrona, pero podría hacerse asíncronamente sin ningún problema). Luego puedes hacer que todas las operaciones se vuelvan asíncronas de la misma manera que se hacía con WinSocks en Smalltalk Express. Simplemente entregas un bloque como parámetro cuando el subsistema está listo para escribir un socket o leerlo. Lo mismo se puede hacer para leer y escribir archivos, conversar con BD, etc. Quiźas es la mayor problema de Smalltalk es que se asume que todos los objetos no ejecutan en paralelo, ya que hay un sólo thread en todo el sistema. Coo lo resuelve Lisp es decir: no hay objetos globales. En Smalltalk todas las clases son globales y algunos objetos como el SystemDictionary Smalltalk tendrían que ser "synchronized". Saludos, Guillermo. 2012/10/30 Esteban A. Maringolo <[email protected]> > El día 30 de octubre de 2012 17:55, Mariano Martinez Peck > <[email protected]> escribió: > > 2012/10/29 Sebastian Sastre <[email protected]> > >> > >> mirá vos, muy bueno. > >> > >> Actualizé el post porque encontré la info sobre el stack que está usando > >> Trello. > >> > >> El tema para los interesados en smalltalk es que se puede usar Amber (S8 > >> también) con nodejs. > > > > > > y que ventajas tiene eso comparado con correr smalltalk directamente en > el > > server? simplemente para poder correrlo en el V8? > > La posibilidad de usar la inmensa biblioteca de node (via su package > manager, npm); y principalmente el uso de su programación asincrónica > de alta performance por tener una VM orientada a eventos. > > El úso más práctico que le vi hasta ahora fue el de tareas con un alto > I/O, ya que justamente casi todas la bibliotecas que le dan soporte a > ésto estan hechas para funcionar asincrónicamente. > > Para tareas CPU Intensive node demostró no ser lo mejor, ya que > despues de todo node no tiene threads y es monoproceso. > > Java tiene algo similar, y Ruby tiene EventMachine, no conozco nada en > Smalltalk que pueda hacer I/O asincrónico. > > Saludos! > > Esteban A. Maringolo > > -- > To post to this group, send email to [email protected] > To unsubscribe from this group, send email to > [email protected] > > http://www.clubSmalltalk.org > -- Saludos cordiales, Guillermo Schwarz Sun Certified Enterprise Architect -- To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] http://www.clubSmalltalk.org
