From September 19th thru September 29th, I had my second sabbatical week of this year, a week free of courses, meetings, speeches, only dedicated to software development, readings and creation. I had published my commitments:
Now, it’s time to publish the outcomes. I think that writing down a list of commitments help me to make clear what I want to do, and it should be completed with another post describing the deliverables of the process. This post and the previous one are deliverables, too, of the project.
The list of commitments and the result:
- Terminate a first running version of AjSharp, my C#-like interpreter, now in development inside my AjBasic project. COMPLETE You can explore the outcome at project code repository, there are two new solutions that define the new language. I published a post with a short implementation description:
AjSharp- a C Sharp-like interpreter, work in progress
AjSharp- un intérprete a la C Sharp, trabajo en progreso
- Write the code for a textual model support in AjGenesis, instead of only XML files, as in current version. You can see some progress at project code repository. COMPLETE Finally, it was implemented. I published posts about this:
Textual model for code generation in AjGenesis
Modelo textual para generación de código con AjGenesis
There are new ideas, model in a spreedsheet, still to be implemented:
- Publish some example of AjGenesis generating files for LINQ and Visual Studio 2008. COMPLETE These are the post:
Code Generation for LINQ and C# 3.0 with AjGenesis
Generación de código para LINQ y C# 3.0 con AjGenesis
- Pouring love in AjTalk project, to support the reading of basic class definitions from .st-like files. COMPLETE Now, the project can load code from .st file, you can see some tests at published code. There are details to complete in the language itself, as support for blocks between [ and ], primitives invocation from code, and indexed variables support. After the sabbatical week, I tested the new Load, and it looks interesting: now, the work is to complete the details and begin to implement the base library. I’m studying the implementation inside Smallatlk/X.
- Write two posts about AjGenesis. COMPLETE The mentioned posts:
Code Generation for LINQ and C# 3.0 with AjGenesis
Generación de código para LINQ y C# 3.0 con AjGenesis
and
Textual model for code generation in AjGenesis
Modelo textual para generación de código con AjGenesis
- Write to post about F#. PARCIAL I wrote one post
F# and Functional Programming Resources
Recursos de F# y Programación Funcional
but there is no second one. As compensation, I wrote a detailed description of last Microsoft TechNight at Buenos Aires, related to programming language, only in Spanish
- Write two posts related to CCR (Concurrent and Coordination Runtime) of Microsoft Robotics. PENDING I wrote down a short introduction, but it’s still incomplete.
No overdeliveries in this week outcome, but using the generated impulse, I was working in language interpreters, resulting in:
http://code.google.com/p/ajfunc
Functional language implementation, named AjFunc. It follows the sintax of F#. I have to add type support, type inference, and thousands details more. But the core is taking form.
http://code.google.com/p/ajlogo
First step in Logo programming language implementation.
http://www.codeplex.com/ajmessages
AjMessages implemented using DSS/CCR. I wrote the example last year, but I updated it, and now, it’s published. The last year I published another example over WCF. Next steps: unify the two implementation, better object serialization, better configuration. Post with short description:
Distributed applications with AjMessages using DSS/CCR
Aplicaciones distribuidas con AjMessages usando DSS/CCR
As usual, I had fun in this sabbatical week, and I learnt a lot of new stuff.
Angel “Java” Lopez
http://www.ajlopez.com/en
http://twitter.com/ajlopez

F# is a functional language, created by Microsoft. Implemented under .NET CLR, it’s a typed language, with access to .NET framework. It inherits most of ML/OCaml features.