Release notes for ShapeLogic

2008/03/05 ShapeLogic v 1.0 released AKA Beta 1

  • Rule for image processing have been migrated, previously they were implemented as goal driven tasks with sub tasks. Version 1.0 uses lazy streams which is simpler and more powerful.
  • Letter match example now matches all polygons instead of just the first found.
  • When running ShapeLogic as ImageJ plugin, it is now easy for users to define rules for matching in external Java files.
  • New number matcher to demonstrate how to define rules for matching in external Java file, in 130 lines of code.
  • Enabled use of Java 6 Scripting for rule database, which gives the user access to the 25 scripting languages that are supported
  • ShapeLogic now has beta development status
  • Many unit tests added for Lazy Stream library
  • Fixed bugs in Lazy Stream library
  • Fixed bugs for the letter X
  • There is around 25000 lines of Java code
  • 385 unit test that all works on local machine

2008/01/23 ShapeLogic v 0.9 released AKA Lazy stream

This is the first release where ShapeLogic is moving beyond current parameters as a plugin library for ImageJ, currently only used in a letter recognition example. The improved system will be for declarative programming where the user can define rules in either a database or flat file. The focus will still be on image processing and computer vision, but the system will be more broadly applicable. There has been no new work on image processing or letter recognition in this release. ShapeLogic v 1.0 will combine these new changes with the current rule base code for image processing.

  • Introduce new functional, declarative and query constructs
  • Implement lazy streams like Haskell, Scala or Scheme
  • These functional constructs are very lightweight and you only need one 200KB jar file to use it in other applications
  • Test streams by solving the first 10 mathematical problems from Project Euler
  • Enabled Java 6 Scripting for evaluating expressions
  • Tested with Groovy, JRuby, JavaScript, but should work with other supported Scripting languages, currently that are 25 of these. This makes it possible for users to add rule, formulas and queries in real time using text format. They can interact with a running Java application, which can be useful in science, finance or web application.

2007/12/07 ShapeLogic v 0.8 released AKA Letter matching is almost working (for the forth time)

  • Create ShapeLogic documentation site, checked the documentation into SVN.
  • Add Javadoc to ShapeLogic documentation site.
  • Created a way simpler and more expressive syntax for matching rules at the lowest level.
  • More general logical expression instead of just equal and greater than test at the lowest level now you can use the following 3 predicates for matching:
    • Equal.
    • Greater.
    • Smaller.
  • Clean up letter recognition example, take out all the size() that are part of expressions.
  • There is around 16000 lines of Java code
  • 190 unit test that all works on my local machine

2007/11/27 ShapeLogic release 0.7 AKA Alpha 1

Content of 0.7.0:

  • First alpha quality release
  • Letter recognition example more robust
  • Bug fix so logic language directly can use annotation
  • More general logical expression instead of just equal test at the lowest level
  • Includes a binary distribution that contains all the dependent jar files, to ease deployment
  • There is around 16000 lines of Java code
  • 182 unit test that all works on my local machine

2007/11/20 ShapeLogic release 0.3.0 AKA All capital letters release

Content of 0.3.0:

  • There is around 15000 lines of Java code
  • 172 unit test that all works on my local machine
  • Fixed problems with logic language for filters
  • Fixed several bugs
  • Letter matching is now extended to work for all capital letters

Remaining issues:

  • The logic language is having problems with parsing some annotations, so the letter matching is not very robust

2007/11/08 ShapeLogic release 0.2.0 AKA the Smilla release

Named after the most fantastic prematurely born baby. The code is released somewhat prematurely, and still needs more cleanup. This is the state of code when it was first uploaded to Google Code Hosting.

Content of 0.2.0:

  • There is around 14000 lines of Java code
  • 159 unit test that all works on my local machine.
  • Color segmentation
  • 3 implementations of line vectorizers
  • Point and line annotation
  • Rudimentary declarative logic engine
  • Example of rule database for recognizing capital letters
  • Maybe half the code is well commented
  • There are some documentation on the Google Code Hosting page

2007/09/29 ShapeLogic was created on Google Code Hosting

Development started August 2007.