I find the name data to be confusing in the oracle's class attributes.
I'd rather go for symbols instead, to clearly distinguish it from the concrete data, the features. With an -s, because there are several possible symbols accessible for a given state!
And rename f_array to feature at the same time, because, who knows, a feature doesn't necessarily have to be an array! And anyway, the interface should be kept separate from the actual implementation, so mentioning arrays is bad practice.
I find the name
datato be confusing in the oracle's class attributes.I'd rather go for
symbolsinstead, to clearly distinguish it from the concrete data, the features. With an -s, because there are several possible symbols accessible for a given state!And rename
f_arraytofeatureat the same time, because, who knows, a feature doesn't necessarily have to be an array! And anyway, the interface should be kept separate from the actual implementation, so mentioning arrays is bad practice.