Чтобы примерно оценить сложность задачи, предлагаю рассмотреть оч простой случай. Вот есть некий код, много кода, скажем, исходники JDK. Нужно автоматически определить такой элемент стандарта, которому следовали разработчики, как максимально допустимая длина строки (раньше это было 80 символов, скажем). С учетом возможных нарушений стандарта в текущем коде. Уже эта одна задача способна сломать мозг, а ведь это детский сад.