Archive

Archive for the ‘cilib’ Category

Simplification of Types

April 6th, 2010 gpampara No comments

Types. They are the heart of the any language, similarly they are the core of what CIlib operates on.

We are always looking to make things simpler and less error prone, as a result we have decided to look at the core of the library. A refactoring to solidify the core design, with the intention of refactoring as we go to correct the remainder of the library, has started and so far we are pleased with the results.

The reasoning for the refactor include:

  • Simpler usage of types.
  • Easy to understand API.
  • Type instances that have clearly defined responsibilities.
  • Immutability wherever possible to prevent snowball effects of errors.

Additionally, Vector instances are now created using a builder with all the current constructors on Vector being deprecated for the moment. Obviously, the intention is to remove all deprecations as soon as possible.

There will be changes to the manner in which our users use the Vector, however, we believe that the changes are very valid and warrant the minor API change.

Categories: cilib Tags: ,