Genetic programming with context-sensitive grammars