The CoffeeScript compiler depends on the output from Array::toString
being formatted in a specific way. Our changes, which wrapped the
output in square brackets, were causing the CoffeeScript compiler to
double-wrap some arrays (particularly the ones returned by player
strategies).
This commit makes it so that the change to Array::toString is applied
when the program enters Dominiate's top-level API methods and is
reverted when program control leaves those methods.
The CoffeeScript compiler depends on the output from Array::toString being formatted in a specific way. Our changes, which wrapped the output in square brackets, were causing the CoffeeScript compiler to double-wrap some arrays (particularly the ones returned by player strategies).
This commit makes it so that the change to Array::toString is applied when the program enters Dominiate's top-level API methods and is reverted when program control leaves those methods.
Fixes #56 Fixes #59