Mass Lenguaje de Programación (5) Acceso a Variables

Published on Author lopezLeave a comment

Anterior Post Al fin comencé una nueva implementación de variables y su alcance en el lenguaje Mass. Mi idea es: – Tener variables locales – Sin necesidad de declararlas explícitamente – Acceso al alcance “de afuera” si es necesario La idea base es: – Cualquier asignación a variable involucra al alcance local Es decir, que… Continue reading Mass Lenguaje de Programación (5) Acceso a Variables

Resoluciones del Nuevo Mes: Julio 2013

Published on Author lopezLeave a comment

Revisión de mis resoluciones de Junio: – Actualizar Mass [completo] repo – Actualizar RubySharp [completo] repo – Actualizar PythonSharp [completo] repo – Actualizar ClojSharp [completo] repo – Actualizar AjSharp [pendiente] – Ejemplos de AjGenesis Node.js [pendiente] – Actualizar Aprendiendo Ruby [pendiente] – Actualizar Aprendiendo Python [completo] repo – Escribir ejemplo Node.js/Express/MongoDb [completo] repo – Nuevo… Continue reading Resoluciones del Nuevo Mes: Julio 2013

ObOps: Operadores para Objetos

Published on Author lopezLeave a comment

En varios de mis proyectos open source de intérpretes, uso una librería Microsoft.VisualBasic que tiene un namespace Microsoft.VisualBasic.CompilerServices con una clase Operators que implementa operaciones sobre objetos cualesquiera. Por ejemplo, puede sumar dos objetos, sin saber de antemano qué tipo tienen (enteros, dobles, strings) cada uno de los dos parámetros. La comencé a usar ya… Continue reading ObOps: Operadores para Objetos

Mass Lenguaje de Programación (4) Lexer y Parser

Published on Author lopezLeave a comment

Anterior Post Siguiente Post  En la implementación del lenguaje Mass, tengo una enumeración y una clase: Un Token representa una palabra del código a procesar. El encargado de separar el código en palabras es el Lexer. Y con el Parser se transforma esa corriente de Tokens en expresiones y comandos: El constructor de Lexer recibe un… Continue reading Mass Lenguaje de Programación (4) Lexer y Parser

Mass Lenguaje de Programación (3) Comandos

Published on Author lopezLeave a comment

Anterior Post  Siguiente Post  Veamos hoy cómo están implementados los comandos en Mass (ver repo). En el proyecto de librería de clases, tengo: Hay comandos para if, while, for, for each, etc…. Todos implementan la interfaz ICommand: public interface ICommand { object Execute(Context context); } Vean que es muy parecido a IExpression. Igual quise mantener comandos… Continue reading Mass Lenguaje de Programación (3) Comandos

Mass Lenguaje de Programación (2) Primeras Expresiones

Published on Author lopezLeave a comment

Anterior Post  Siguiente Post  Antes de ver cómo usar el lenguaje Mass (ver repo), quisiera tratar algunos temas de implementación. Primero, una novedad: ahora hay una solución (en https://github.com/ajlopez/Mass/blob/master/Src/Mass.sln) que puede compilarse con algún Visual Studio C# Express, de libre bajada e instalación. La solución Mass tiene un proyecto de librería de clases. Ahí hay un… Continue reading Mass Lenguaje de Programación (2) Primeras Expresiones

Mass Lenguaje de Programación (1) Orígenes

Published on Author lopezLeave a comment

Siguiente Post Durante estos días, estuve trabajando en la implementación de un lenguaje interpretado, sobre C#, llamado Mass (dedicado al bueno de @MArtinSaliaS): https://github.com/ajlopez/Mass La solución actual se compone de tres proyectos: una librería de clases, sus tests, y un programa de consola, mass.exe, para lanzar programas Mass Pueden lanzar un programa escrito en un… Continue reading Mass Lenguaje de Programación (1) Orígenes