Modern web applications are result of evolution of websites. Websites consists of separate webpages that primarily considered as documents. This is the legacy of early years of Internet, when web servers were used to store and publish of structured text documents. Evolution of web has added styles to webpages and then made them dynamically generated by implementation of server-side executable code. Dynamic webpages were extended by forms with interactive elements, such as text fields, pop-up selectors, submit buttons and etc. This made them bit closer to application interfaces than documents.
Actually, the Wikipedia's definition is not complete and only suitable for very simple web applications. It leaves server-side chunk behind the scenes completely. Server-side is still optional, but most of modern web applications are not working and even do not exist without it. Server-side is a data storage (database) and collection of executable scripts or even high-performance native applications run on server.
Anyway, it brings at least one more server-side programming language to the Wikipedia's list. It could be C, PHP, Perl, Python, Ruby, Java or something else depending on your taste.
So, really, we should use at least four different languages to build modern web application (to say nothing of databases and SQL). Such complexity, in comparison with native applications where single programming language is enough to build application, is a legacy of backward compatible evolution of web technologies where web application is still considered as a set of documents.