Allzweck-Programmiersprache
# Allzweck-Programmiersprache

Eine Allzweck-Programmiersprache (englisch General-purpose programming language, kurz GPL, auch „Mehrzweck-“ oder „Universalsprache“) ist eine Programmiersprache, die für viele Anwendungsfälle/Problemstellungen einsetzbar ist. Allzweck-Programmiersprachen sind Turing-vollständig, das heißt, dass sie theoretisch jedes berechenbare Problem lösen können. Allzweck-Programmiersprachen stehen in Gegensatz zu den domänenspezifischen Sprachen (DSLs), die nur für spezielle Anwendungsfälle geeignet sind.

## Vorteile

Mit einer Allzweck-Programmiersprache lassen sich in vielen Anwendungsbereichen Probleme lösen. Der Programmierer hat ein hohes Maß an Freiheit und kann bereits bekanntes Wissen erneut einsetzen. Außerdem besitzen Allzweck-Programmiersprachen mächtige Abstraktionsmechanismen wie Funktionen, Klassen, Module usw.

## Nachteile

Zu lösende Probleme müssen in die „komplizierte“ Welt der verwendeten Programmiersprache umgesetzt werden. Dies gestaltet sich insbesondere dann schwierig, wenn sich komplexe Fachgebiete überschneiden. So muss der Programmierer das Problem, das häufig nicht sein Fachgebiet ist, erst verstehen, bevor er es in Programmcode umsetzen kann. Das daraus entstehende Programm ist für außenstehende Programmierer meist schwer zu verstehen und erfordert mehr Einarbeitungszeit. Eine mögliche Lösung hierfür bieten domänenspezifische Sprachen.

## Beispiele

* Python
* C
* Java
* C++
* C#
* Visual Basic .NET
* JavaScript
