The app is working differently because it solves a different problem. It actually need a deeper understanding of the language as you just wrote.