When i began with these i was really ignorant about types, now i can say, i know a little bit of this huge world.
I lerned about many many things, like graphs alogorithms, tree algorithms, reflection, meta programming, loggin , prediction, tarot, etc.
As fruit of these days of hard work, i get for the comunity three projects:
- Concrete Type Inference
- Kwisatz Haderach
- Paul Le poulpe
An inferrer, a behavior analyzer and a logger.
Making a balance, i’m happy. I want to get more funcitionality to this point, over all i wanted to get inference over reflection and messages like become: but well, i’m not that good i supose, i needed and i need to lern and growup to make each step. But, really i cannot complain, reaching the end of this window of coding, i have added:
Support:
- Subresult comparing mechanism
- Trait extension to useit
- Code patterns (like conditional contexts and multiple dimension analysis)
- Error management
- MethodContext and thisContext support
- Pharo 2.0 ( the core project was not really ported, just a bit)
- 40 new primitives
- fixes and generalization over all the 46 old supported primitives
- Semi generalization matching mechanism for primitives
- Named primitives support
- Symbol as method sender ( a bit of reflection )
- Collection common usage
A suit of 992 Tests with a huge number 568 green tests ( 165 really-hard more tests from the last post 🙂 )
An easy-to query and well tested call graph, based on the visitor pattern, builded from an integration of the inferencer-stack management with the announcement framework.
A highly configurable logger based on the Log4j api that supports too the logging builded in the image.
Now, maybe you are asking your self: this is the end? The answer is “no” Why on earth i should stop programming this? :).
More than this, i’m about to begin a journey really important for my self. Maybe to france, maybe to spain. At least the next two years i’ll be working in this project by my self. I believe that we can build a better future, i believe in pharo and smalltalk, and i want to make more people to believe in this beatiful community and in this way to make software, but, we still needing better tools. Tools based in a dependable type information.
Where is the code?
Type inference v1.0 & Kwisatz Haderach v1.0