Inside Smalltalk
[Ale; Bloque Avanzado; 15:40 a 16:30 hs]
Objetivos
La exposición cubrirá detalles de arquitectura y diseño de una máquina Smalltalk.
Se detallaran las ventajas particulares que tiene una máquina Smalltalk y como/donde pueden utilizarse estas ventajas.
Temario
[Preliminar]
Principios de Diseño de Smalltalk.
Todo es un objeto.
- Objetos y mensajes.
- Todo es un objeto. ¿Todo es un objeto?
- Clases, métodos, bloques y comportamiento en general.
- Contextos.
- Procesos y semáforos.
- Evolución de un sistema.
- Clases, metaclases, reflexión y metaprogramación.
Ambiente de Objetos.
- Nombres, visibilidad y su importancia para un objeto.
- Recolección de basura
- Smalltalk; Root de un ambiente.
- Espacios de nombres, subespacios, parcelas, SLLs, proyectos y repositorios.
- Mecanismo de virtualización de objetos
- Proxies
- Distribución transparente
Máquina Virtual.
- Necesidad de virtualizar la máquina.
- Arquitecturas actuales.
- Method LookUp
- Métodos primitivos
- Métodos externos y APIs
- Activación de contextos
- Assembler de la maquina virtual
Compilación y binding dinámico.
- Compilación
- El compilador.
- El decompilador.
- aClass compiler.
- Compiler Frameworks
- ParseNode
- Binding, Referencias y Asociaciones
- Ingeniería reversa de métodos Smalltalk.
- Intérpretes y Scripting