pigs_and_sheeps
first_boid_on_screen
Adding vision angle and behavior

Created a basic sheep brain
Added the angle of vision
Boid inheritance model changed
Boid inheritance model changed

Boid generic constructor accepts a configurator object
using a block

   b = new Boid(function(boid, config){
      config.brain = new SheepBrain(boid)
      config.mass  = 20
   }
New ways of defining Boids
Dynamic Methods

As long as Firefox has discontinued logging parameters when
a function call crashes.  We have implemented:

  1. JavascriptSource to fetch, via AJAX, the source code of a file.
  2. CodeBlockFinder: a pushdown automaton to parse code.
  3. Refactor Exception to use this two classes. It's pending to
     handle all possible parameters (closures, in particular).
  4. Make an example using World#new_boid_as_XXXX
  5. Change Boid to accept:
      1. A configuration block
      2. Inheritance.
  6.- Changes in Gate are made to put event driven programming under
      the control of lluvia Project
CodeBlockFinder.parse_params

Given a complex set of params: a string representing
the arguments in parenthetical.

It returns an array with the params.

  ###Example

    CodeBlockFinder.parse_params( "2, 3, a + 2 * b / 5, function(a,
    b){\n\
                            var j = 0 \n\
                            for (var i=0; i<3; i++, j+=2*i % 3);
                        })
    // => ["2", "3", "a+2*b/5", "function(a, b){ ... }"]
CodeBlockFinder.parse_params

Function definition corrected to accept inner objects

    ###Example

       var method = "function(a,b,c, d){ \
         { prop1: 2, \
           prop2: 5, \
           prop3: 7};\
         var j = 0 \
         for (var i=0; i<3; i++, j++){\
             ;\
           }\
         }"

      CodeBlockFinder.parse_params(method)
CodeBlock.parse_params

Finally working for this example:

   ### Example

   var method = "3, " + (function(boid, config){
		config.colour = "pink"
		config.geo_data = {
		   position: new Vector(350, 250),
		   velocity: new Vector(0, 0),
		   acceleration: new Vector(0, 0)
		}
		return config
	}).toSource() + ", 2"

    CodeBlockFinder.parse_params(method)

    // => ["3", "(function (boid, config...	}\n return config \n
          })", "2"]
Exception refactor
A Logger class has born
Merge pull request #1 from lau-zorrilla/master

Changed Boid creation
Merge remote-tracking branch 'upstream/master'