OK, they parse into Abstract Syntax Trees and use control flow graphs, they're definitely better than mine. Nice. Ah, the work someone wishes they could have done but didn't have the time to do ;-) - Steve