in reply to Moose and static arrays

Where would you stop? What would you make an object? %King_Moves? Or should the list of possible moves also be objects? But even then, you can make the fields themselves objects as well. And fields are really intersections of rows and columns, so you could make row objects, column objects and intersection objects.

I would just leave it as is. Static data is just that, static data.