2010/6/24 Diogenes Moreira <[email protected]> > Guillermo alguno de comentarios entre linea.. lo hago así para que no sea > una prosa interminadbles > > > 2010/6/24 Mariano Martinez Peck <[email protected]> > > >> >> 2010/6/24 Guillermo Schwarz <[email protected]> >> >>> Diogenes, >>> >>> Si no me equivoco "raificar los procesos" se refiere a que los procesos >>> sean objetos, no que echen raices. Eso porque en Inglés "to reify" es volver >>> concreto lo abstracto, más como un error conceptual (u ontológico si >>> prefieres) ya que en folosofía se asume que volver concreto lo abstracto es >>> sinòmimo de equivocarse, pero en computación no sólo es aceptado sino que >>> produce resultados bastante interesantes, como lo que se pretende que es >>> hacer que los procesos sean más fáciles de manipular. >>> http://www.merriam-webster.com/dictionary/reify Pensé que esto Smalltalk >>> ya lo tenía. >>> >> * > *Dolphin 6, no tiene una completa raificación de los procesos y el > context. Otros dialectos Si. terminas instanciando un "Debugger" Dolphin > tiene un monton de cosas buenas pero precisamente en esto esta flojo. Es > mas, si ves la implementacion de los continuarions en seaside 2.8 para > dolphin para poder operar desde el contexto. >
Nice. Me gustarìa mirarlo, pero imagino que el còdigo no serà precisamente bonito. En Smalltalk existe thisContext que es una pseudovariable similar a self y super, pero que da acceso al bloque en ejecución, lo que en mi opinión es increíble limpio. Supongo que te refieres a que guarda thisContext en un stream como dicen por ahi (supongo que se refieren a un String) y luego lo recuperan y le dicen "sigue ejecutando". En Smalltalk existe la idea de que un proceso es un objeto y vice versa. Por eso se puede pasar una "computación" a ejecutar de manera postergada (delayed evaluation), lo que en lenguajes funcionales se conoce como lazy evaluation pero es más automático y lo más parecido en Lisp sería una expresión lambda. > > >>> Eso de los continuations lo entiendo. Es lo mismo que lo anterior. Le >>> dices a un proceso que pare y que siga después en el punto en que paró. Eso >>> en Smalltalk lo tienes con yield y continue si no me equivoco. >>> >> > No es eso.. es dado un proceso y su contexto (incluyendo todos los > objectos), modelar un punto de ejecución el cual puede ser enviado a otro > objecto, para su posterior ejecución . > Y sí a eso me refería. Con yield puedes detener la ejecución, luego agarras thisContext, empaquetas ese objeto (bloque) a medio ejecutar y cuando lo desempaquetas le dices "continue". Obviamente debe ser más complicado que eso porque el thread (o tarea) actual no puede empaquetarse a sí mismo, o tal vez sí... ;-) > La potencialidad de esto es mucha. sino mira la utilización de Seaside de > los continuations para generar su propio lenguaje de dominio. > La verdad es que no me imagino buceando por seaside para ver dònde encuentro eso. Podrìas dar un ejemplo conciso? > > No quiero repetir los link, pero digamos que vengo con una ejecución, y ahi > le pido al proceso que me diga lo que esta haciendo, de tal manera que puede > continuar con lo que esta haciendo en otro momento el u otro. Esta muy lejos > de un yield. Estamos hablando de los procesos conceptialmente y no como un > thread que este ejecutandose en ese momento en el ambiente. > > >> >>> Eso de los partial continuations, ¿de qué se trata? Acá dice que >>> guardamos sólo parte de la computación que llevamos calculando... >>> http://double.co.nz/scheme/partial-continuations/partial-continuations.html... >>> eso me suena a increíblemente complicado de programar. >>> >>> t >> > Mira como mucho en OOP tiene una base compleja para que el framework haga > el trabajo. El uso de cache y proxy en glorp es muy complejo, pero vos > programar que usas el framework te abstraes de todo ese kilombo y solamente > lo usas y listo. > > >> Yo tenía este link que me parece bastante bueno: >> >> http://blog.fitzell.ca/2009/01/seaside-partial-continuations.html >> >> saludos >> >> mariano >> >> >> >>> En general prefiero las abstracciones que simplifican el problema, no >>> aquellas que agregan un grado de complejidad mayor (como los threads en >>> Java). Mira "la Quinta Disciplina" de Peter Senge, ahí dice que el problema >>> de las organizaciones es que ante problemas complejos desarrollan soluciones >>> complejas, de modo que las soluciones se vuelven parte del problema porque >>> agregan complejidad en vez de reducirla. >>> >>> Es lo mismo que dice la gente de Smalltalk (aunque al parecer no toda ;-) >>> respecto de que no se debe agregar comportamiento, sino dejar que el >>> comportamiento "emerja", aunque es una versión más sutil (detallada) en mi >>> opinión. >>> >>> Si esto es completamente cierto y creo que no estas teniendo total > dimensión de mi comentario. Yo no estoy diciendo hacer mas complejo al > proceso, sino que lo que estoy diciendo, dame acceso a comportamiento que > este momento esta atras de un puntero y que es inaccesible atras de > primitivas. > > Hay veces que solo te alcanza con un fork, otras veces no. > > Igual te comparto algo con la mejor onda, hubo un antes y un después en mi > vida de programador, cuando entendí las cosas que podes hacer con la meta > programación.. el código que mucho mas simple. > > Saludos > > >> Saludos, >>> Guillermo. >>> >>> 2010/6/23 Diogenes Moreira <[email protected]> >>> >>> Esperemos que tenga raificados los procesos y soporte los partial >>>> continuations :). >>>> >>>> Con respecto a que tiene mejor Dolphin que Pharo.. >>>> >>>> Siendo impartial... el grano en el o.. de pharo al igual que de squeak, >>>> es Morphic esta hecho con los pies, hay mucho que laburar para que el >>>> ambiente tenga algo decente.. Morphic 3(Grande Juan) esta mucho mejor, pero >>>> todavía no esta es la base de las imagen core... despues la VM es bastante >>>> rebusta. >>>> >>>> Tiene otras cosas, pero de a poco se van mejorando. >>>> >>>> Por su parte Dolphin y MVP, para aplicaciones clientes esta muy bueno, >>>> es de lo mejorsito que he visto >>>> >>>> Ahora hacer una comparación de un proyecto Open Source, vs un smalltalk >>>> licenciado.. es medio comparar chancho con batatas.. >>>> >>>> DNG viene a darle vida a un base instalada muy grande, del dolphin >>>> actual. Por ejemplo donde laburo tenemos un producto hecho en dolphin y ya >>>> estaba viendo con cariño una migración de dialecto. Espero que no haga >>>> falta. >>>> >>>> Pregunta alguien sabe si es multiplataforma o va ser windows only??? >>>> >>>> Saludos. >>>> >>>> >>>> >>>> >>>> On Wed, Jun 23, 2010 at 11:00 PM, Esteban A. Maringolo < >>>> [email protected]> wrote: >>>> >>>>> 2010/6/23 Guillermo Schwarz <[email protected]> >>>>> > >>>>> > ¿Qué ventaja tiene sobre Pharo? >>>>> >>>>> Lo tiene a Reimondo en el equipo. >>>>> >>>>> -- >>>>> To post to this group, send email to [email protected] >>>>> To unsubscribe from this group, send email to >>>>> [email protected]<clubsmalltalk%[email protected]> >>>>> >>>>> http://www.clubSmalltalk.org >>>>> >>>> >>>> -- >>>> To post to this group, send email to [email protected] >>>> To unsubscribe from this group, send email to >>>> [email protected]<clubsmalltalk%[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]<clubsmalltalk%[email protected]> >>> >>> http://www.clubSmalltalk.org >>> >> >> -- >> To post to this group, send email to [email protected] >> To unsubscribe from this group, send email to >> [email protected]<clubsmalltalk%[email protected]> >> >> http://www.clubSmalltalk.org > > > -- > To post to this group, send email to [email protected] > To unsubscribe from this group, send email to > [email protected]<clubsmalltalk%[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
