Download Introducción al Lenguaje de Programación Boo
Document related concepts
no text concepts found
Transcript
Introducción al Lenguaje de Programación Boo http://boo.codehaus.org Rodolfo Finochietti Intermediate Language • Los compiladores .NET generan código intermedio – MSIL (o CIL, o simplemente IL) • Similar al código nativo de las CPUs – Pero independiente de la CPU/Arquitectura – Basado en stack (no hay registros) • Herramientas: ILASM y ILDASM – Lenguaje “estilo” assembler Intermediate Language • En teoría, cualquier lenguaje se puede compilar a IL – Es “turing-completo” • Como la mayoría de los lenguajes de programación • Incluye algunas construcciones de alto nivel – Lenguajes orientados a objetos • Creación de instancias • Llamadas a funciones virtuales – Tipos complejos como object y string – Fundamentos para objetos y reflexión Boo: Un lenguaje .NET que no se parece a un lenguaje .NET • Boo es un lenguaje orientado a objetos de tipos estáticos escrito para el CLR • Sintaxis inspirada en Python • Énfasis en la productividad y extensibilidad del lenguaje y su compilador Características • "Dinamismo" basado en la inferencia de tipos – Duck Typing • • • • • • • Generadores Multi-métodos Macros Closures Currificación Funciones de primera clase Y muchas otras características Recursos • Boo: http://boo.codehaus.org/ • Boo Primer: http://boo.codehaus.org/Boo+Primer • Boo Manifesto: http://boo.codehaus.org/BooManifesto.p df Bibliografia • Compilers: Principles, Techniques, and Tools (2nd Edition) – http://tinyurl.com/yj55yg9 • Compiler Construction: Principles and Practice – http://tinyurl.com/yj8uyo5 • Compiling for the .NET Common Language Runtime – http://tinyurl.com/yguead4 • Build Your Own .NET Language and Compiler – http://tinyurl.com/yh2h2vz • Expert .NET 2.0 IL Assembler – http://tinyurl.com/yfu4zvl Preguntas Rodolfo Finochietti rodolfof@lagash.com http://weblogs.shockbyte.com.ar/rodolfof http://twitter.com/rodolfof