Hola Angel, lo que estás haciendo suena alucinante. A ver si entiendo...
Parseás código ST a un syntax-tree abstracto, y de ahí podés generar código al lenguaje que sea. El parser lo escribiste en C# y tenés también generador hacia C#, JavaScrtipt y uno en Java (que estabas haciendo para Germán). Asimismo, en el lenguaje (o plataforma) "target" hay una especie de soporte "runtime" para poder tener funcionalidad de Smalltalk que no se encuentra en el lenguaje en cuestión, además de para servir de "bridge" entre el código ST y las frameworks que te ofrece el lenguaje final... Estoy entendiendo bien? Ahora, donde entra la parte de la VM... es parte de lo que yo llamé el "soporte runtime"? Qué tiene que tener dicha VM/runtime para que puedas cambiar clases on-the-fly, o agregar soporte de debugueo? Se podría entonces, en teoría, compilar a Python, Ruby, lo que sea? Saludos, Sebastian El día 24 de noviembre de 2012 17:01, Angel Java Lopez <[email protected]> escribió: > Hola gente! > > Ah, si, Sebastian! Es lo que presente en Smalltalks 2010 y en 2011, open > source, y siempre pueden ver la evolucion en mi github: > https://github.com/ajlopez/AjTalk > Presentada en Smalltalks 2010, escrita con TDD; commits atomicos, para > cualquiera pueda vigilar si me aparto de TDD o no :-) (cc @hernanwilkinson > :-) > > Corre en memoria, accede a objetos nativos, y tiene una parte que compila > .st a javascript (en realidad, el compilar a JavaScript es una prueba de > concepto de algo mas basico: tener un Abstract Syntax Tree y visitarlo, con > Visitors, generando algo. Tengo visitors que generan JavaScript, y visitors > que generan codigo bytecode a ejecutar en la memoria. El "litmus tests": > poder hacer otro Visitor, que genere Python, por ejemplo. Supongo que Uds. > preferirian hacer eso en Smalltalk, pero todavia para mi es mas "proficient" > hacerlo en C# > > Este anio le estaba haciendo a maese @garduino una version en Java > https://github.com/ajlopez/AjTalkJava > pero parece que maese abandono el Eclipse, snif.. :-) > > Y la que presente el anio pasado en Smalltalks 2011 (y este anio en JS > Conf): > https://github.com/ajlopez/AjTalkJs > en Javascript (tiene una parte que ejecuta bytecodes, y otra que ejecuta > JavaScript directo= > > Pero la mas madura es la de C#. Espero como proyecto "de verano" hacer que > levante un sitio web, por lo menos archivos estaticos, si consigo algo mas > dinamico, bienvenido! > > Nos leemos! > > Angel "Java" Lopez > @ajlopez > gh:ajlopez > > > 2012/11/24 Sebastian Nozzi <[email protected]> >> >> Te estás haciendo tu propia VM? Impresionante! >> >> Y por lo que dejás entrever tendrías varias versiones? (C#, Java...?) >> >> El día 24 de noviembre de 2012 16:27, Angel Java Lopez >> <[email protected]> escribió: >> >> > Interesante, maese GallegO. En mi VM ya puedo tener mas de una imagen >> > (cada >> > una con su propio Object, clases, metodos) en memoria. Hoy consegui >> > serializar y deserializar bastante (en la version C#), me falta guardar >> > los >> > bytecodes de los metodos compilados (aguante TDD :-) >> >> -- >> To post to this group, send email to [email protected] >> To unsubscribe from this group, send email to >> [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] > > http://www.clubSmalltalk.org -- To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] http://www.clubSmalltalk.org
