Hola gente!
En un lenguaje dinamico, se puede implementar esa estrategia de objeto A y object B, como en TinyTalk (creo recordar), para que si alguien decide agregar una variable de instancia a B, modifica el layout del objeto B, y las referencias por “offset” a variables internas de A no quedan afectadas. Es decir, si en A había una variable de instancia foo, que internamente ocupaba el lugar 3 dentro de la estructura de cada objecto A, el agregar una variable de instancia bar a B no afecta lo compilado para A: todos los métodos que internamente accedan a A.foo (por ponerlo de alguna manera) lo siguen buscando en la posición 3 de cada objeto A. Pero no todas las maquinas virtuales siguen ese esquema. Que sepa, prácticamente todos los Smalltalks crean instancias AB (es decir, con todo junto). Pero no se cual es el estado actual del arte. Nos leemos! Angel “Java” Lopez http://www.ajlopez.com http://twitter.com/ajlopez De: [email protected] [mailto:[email protected]] En nombre de Juan Pappalardo Enviado el: martes, 08 de septiembre de 2009 2:50 Para: [email protected] Asunto: [clubSmalltalk] Re: herencia... cómo se implementa? Lo que yo entiendo de herencia, por lo menos en smalltalk, es que se exitiende la clase hijo en el bytecode, no que se crean instancias de ambas. Pero obviamente no soy el mas "erudito" en el tema....asi que espero correcciones. Interesante pregunta, saludos El 8 de septiembre de 2009 01:37, Leandro Martín Malsam <[email protected]> escribió: por ahí el subject suena a novato, pero ahora entenderán. participando en un foro de mi facultad, encontré el siguiente "dilema" posteado por un usuario: Habiendo ido el sabado a la tarde a la PyCon, escuche al tipejo de Google quejarse de el excesivo envio de mensajes entre objetos. Recien estuve chusmeando un poco, y me entero de que casi todos los lenguajes OO, cuando creas un objeto A que hereda de B, la maquina virtual crea un objeto A, un objeto B, y los relaciona. ¿Porque? ¿No es mas comodo y eficiente, crear un objeto A con las caracteristicas de B? osea, que en el codigo fuente, A herede de B, pero cuando todo se convierta a bytecode, estos "dos objetos" se conviertan en uno solo... Probablemente no me se explicar la idea... pero bue, ustedes entenderan :P. se entendió? creo que la pregunta de mi compañero es clara. y bueno, como yo soy medio novato en estas cosas, no tuve mejor idea que trasladarles la inquietud a los eruditos de la materia, de quienes siempre se aprende algo. así que si se copan y nos iluminan un poco, les agradecemos. salu2 lea No virus found in this incoming message. Checked by AVG - www.avg.com Version: 8.5.409 / Virus Database: 270.13.82/2351 - Release Date: 09/07/09 06:40:00 --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] http://www.clubSmalltalk.org -~----------~----~----~----~------~----~------~--~---
