<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Programmierparadigma</id>
	<title>Programmierparadigma - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Programmierparadigma"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Programmierparadigma&amp;action=history"/>
	<updated>2026-05-20T15:27:41Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Programmierparadigma&amp;diff=57025&amp;oldid=prev</id>
		<title>imported&gt;SchlurcherBot: Bot: http → https</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Programmierparadigma&amp;diff=57025&amp;oldid=prev"/>
		<updated>2026-01-05T01:09:03Z</updated>

		<summary type="html">&lt;p&gt;Bot: http → https&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Ein &amp;#039;&amp;#039;&amp;#039;Programmierparadigma&amp;#039;&amp;#039;&amp;#039; ist ein fundamentaler [[Programmierstil]].&amp;lt;ref name=&amp;quot;Stroustrup&amp;quot;/&amp;gt; „Der [[Programmierung]] liegen je nach Design der einzelnen Programmiersprache verschiedene Prinzipien zugrunde. Diese sollen den Entwickler bei der Erstellung von ‚gutem Code‘ unterstützen, in manchen Fällen sogar zu einer bestimmten Herangehensweise bei der Lösung von Problemen zwingen“.&amp;lt;ref Name=&amp;quot;GKIT&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Programmierparadigmen unterscheiden sich durch ihre Konzepte für die Repräsentation von statischen (wie beispielsweise [[Objekt (Programmierung)|Objekte]], [[Methode (Programmierung)|Methoden]], [[Variable (Programmierung)|Variablen]], [[Konstante (Programmierung)|Konstanten]]) und dynamischen (wie beispielsweise [[Zuweisung]]en, [[Kontrollstruktur|Kontrollfluss]], [[Datenfluss]]) Programmelementen.&lt;br /&gt;
&lt;br /&gt;
Grundlegend für den [[Entwurf]] von [[Programmiersprache]]n sind die [[Paradigma|Paradigmen]] der &amp;#039;&amp;#039;imperativen&amp;#039;&amp;#039; und der &amp;#039;&amp;#039;deklarativen&amp;#039;&amp;#039; Programmierung. Beim letzteren sind als wichtige Ausprägungen die Paradigmen der [[Funktionale Programmierung|funktionalen Programmierung]] und der [[Logische Programmierung|logischen Programmierung]] zu nennen.&amp;lt;!-- ... und bei imperativen? --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die verschiedenen Paradigmen sind, bezogen auf einzelne [[Computerprogramm]]e, nicht als konkurrierende bzw. alternative Programmierstile zu verstehen. Vielmehr können „viele Programmiersprachen mehrere Paradigmen gleichzeitig unterstützen“.&amp;lt;ref name=&amp;quot;MSLIB&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
;Beispiel&lt;br /&gt;
:In einer unter [[Microsoft Access|MS Access]] und mit [[Visual Basic for Applications|VBA]] entwickelten [[Anwendungssoftware|Anwendung]] sind die funktionalen Komponenten &amp;#039;&amp;#039;ereignis- und objektorientiert&amp;#039;&amp;#039; angelegt (Bsp.: „beim Öffnen von Formular X“). Der VBA-Code ist &amp;#039;&amp;#039;strukturiert/modular/prozedural&amp;#039;&amp;#039; (denn er besteht aus Modulen, Makros, Prozeduren etc.); und er ist gleichzeitig &amp;#039;&amp;#039;imperativ&amp;#039;&amp;#039;, weil er „Befehle“ enthält, die (innerhalb der Prozeduren…) exakt in der codierten Folge ausgeführt werden. Formulare und Berichte sowie die [[SQL]]-Aufrufe sind &amp;#039;&amp;#039;deklarativ&amp;#039;&amp;#039;, weil der Entwickler hier nur das WAS und nicht das WIE festlegt.&lt;br /&gt;
&lt;br /&gt;
Trotzdem werden Programmiersprachen häufig – nach ihrer Grund-Charakteristik –&amp;amp;nbsp;z.&amp;amp;nbsp;B. als objektorientierte, prozedurale oder deklarative Sprache bezeichnet. Die ein Paradigma bestimmenden Merkmale beruhen überwiegend auf den Eigenschaften der angewendeten &amp;#039;&amp;#039;Programmiersprachen&amp;#039;&amp;#039; (wie z.&amp;amp;nbsp;B. bei [[Objektorientierte Programmierung|OOP]], deklarativ …), zum Teil aber auch auf dem individuellen &amp;#039;&amp;#039;Stil&amp;#039;&amp;#039;, der beim Programmieren praktiziert wird (z.&amp;amp;nbsp;B. strukturiert, modular).&lt;br /&gt;
&lt;br /&gt;
Oft kann an den „Bürgern erster Klasse“ („First Class Citizens“ – FCCs) einer Programmiersprache – also den Formen von Daten, die direkt verwendet werden können – erkannt werden, welchem Paradigma die Sprache gehorcht. In [[Java (Programmiersprache)|Java]] (objektorientiert) zum Beispiel sind Objekte FCCs, in [[Lisp]] ist jedes Stück Programm FCC, in [[Perl (Programmiersprache)|Perl]] sind es Zeichenketten, Arrays und Hashes. &amp;lt;!-- Nur an der Datenform erkennbar? Das ist kaum verständlich. Absatz wichtig? löschen?--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Neben den Programmierparadigmen gibt es noch eine Reihe weiterer Kriterien für die Entwicklung einer möglichst fehlerfreien und wartbaren Software – wie zum Beispiel [[Lesbarkeit]] des Programmcodes, [[Redundanzfreiheit]], [[Modul (Software)|Modularität]] und [[Seiteneffekt|Nebenwirkungsfreiheit]]. Diese sollten unter jedem Paradigma so weit wie möglich eingehalten werden. Siehe auch [[Programmierstil]].&lt;br /&gt;
&lt;br /&gt;
== Imperative Programmierung ==&lt;br /&gt;
{{Hauptartikel|Imperative Programmierung}}&lt;br /&gt;
&lt;br /&gt;
Bei der imperativen Programmierung „besteht ein [[Computerprogramm|Programm]] (Anm.: d.&amp;amp;nbsp;h. hier der [[Quellcode]]) aus einer Folge von Befehlen, die vorgeben, in welcher Reihenfolge was vom Computer getan werden soll“.&amp;lt;ref name=&amp;quot;GKIT&amp;quot; /&amp;gt; Die Bezeichnung basiert auf lateinisch „imperare“ („anordnen“, „befehlen“).&lt;br /&gt;
&lt;br /&gt;
{{Zitat|Text=Die meisten […] Programmiersprachen, darunter auch [[Objektorientierte Programmiersprache|OOP]]-Sprachen wie C#, Visual Basic, C++ und Java, unterstützen in erster Linie [auch] die imperative […] Programmierung.&lt;br /&gt;
|Autor=|Quelle=|ref=&amp;lt;ref name=&amp;quot;MSLIB&amp;quot; /&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
=== Strukturierte Programmierung ===&lt;br /&gt;
&lt;br /&gt;
{{Hauptartikel|Strukturierte Programmierung}}&lt;br /&gt;
&lt;br /&gt;
Eine Weiterentwicklung imperativer Sprachen markierte der Aufsatz &amp;#039;&amp;#039;Go To Statement Considered Harmful&amp;#039;&amp;#039; von [[Edsger W. Dijkstra]] aus dem Jahr 1968. Darin wird der Verzicht oder zumindest die Einschränkung der absoluten [[Sprunganweisung]]en (Goto) gefordert; stattdessen sollen [[Kontrollstruktur]]en, wie zum Beispiel „if… then…“, „case… of…“, „while… do…“, „repeat… until…“ verwendet werden.&lt;br /&gt;
&lt;br /&gt;
=== Prozedurale Programmierung ===&lt;br /&gt;
&lt;br /&gt;
{{Hauptartikel|Prozedurale Programmierung}}&lt;br /&gt;
&lt;br /&gt;
Den Ansatz, Programme in kleinere Teilaufgaben aufzuspalten, bezeichnet man als prozedurale Programmierung. Die entstehenden Teilprogramme werden [[Prozedur (Programmierung)|Prozeduren]] genannt. Praktisch alle aktuellen imperativen Programmiersprachen beinhalten den prozeduralen Ansatz.&lt;br /&gt;
&lt;br /&gt;
Die Entwicklung prozeduraler Programmiersprachen und -techniken waren ein wesentlicher Schritt zwischen [[Assemblersprache]] und [[Höhere Programmiersprache|Hochsprachen]], indem sie [[Abstraktion]] und Zerlegung von Algorithmen ermöglichen.&lt;br /&gt;
&lt;br /&gt;
=== Modulare Programmierung ===&lt;br /&gt;
&lt;br /&gt;
{{Hauptartikel|Modulare Programmierung}}&lt;br /&gt;
&lt;br /&gt;
Modulare Programmierung war der erste Versuch, der wachsenden Größe von [[Softwareprojekt]]en Herr zu werden. In der modularen Programmierung wird der prozedurale Ansatz erweitert, indem Prozeduren zusammen mit Daten in [[Datenkapselung (Programmierung)|logischen Einheiten]] zusammengefasst werden. Die Software wird so in größere funktionale Teilblöcke zerlegt, die einzeln geplant, [[Programmieren|programmiert]] und [[Softwaretest|getestet]] werden können. Die entstehenden Unterprogramme werden als [[Modul (Software)|Module]] bezeichnet. Am Ende können die Einzelteile dann logisch miteinander verknüpft werden und die Software ist einsatzbereit. Die [[normierte Programmierung]] beschreibt dabei den Versuch, diesen Ablauf zu standardisieren. Die erste streng modularisierte Programmiersprache war 1978 [[Modula-2]].&lt;br /&gt;
&lt;br /&gt;
=== Programmierung mit abstrakten Datentypen ===&lt;br /&gt;
&lt;br /&gt;
{{Hauptartikel|Abstrakter Datentyp}}&lt;br /&gt;
&lt;br /&gt;
Die Programmierung mit &amp;#039;&amp;#039;abstrakten Datentypen&amp;#039;&amp;#039; behandelt Daten und Funktionen zur Behandlung dieser Daten als Einheit.&lt;br /&gt;
&lt;br /&gt;
== Deklarative Programmierparadigmen ==&lt;br /&gt;
&lt;br /&gt;
{{Hauptartikel|Deklarative Programmierung}}&lt;br /&gt;
&lt;br /&gt;
Die Idee einer deklarativen Programmierung ist der historisch jüngere Ansatz. Im Gegensatz zu imperativen Programmierparadigmen, bei denen das &amp;#039;&amp;#039;Wie&amp;#039;&amp;#039; im Vordergrund steht, fragt man in der deklarativen Programmierung nach dem &amp;#039;&amp;#039;Was&amp;#039;&amp;#039;, das berechnet werden soll. Es wird also nicht mehr der Lösungsweg programmiert, sondern nur noch angegeben, welches Ergebnis gewünscht ist. Zu diesem Zweck beruhen deklarative Paradigmen auf mathematischen, rechnerunabhängigen Theorien.&lt;br /&gt;
&lt;br /&gt;
* Aufgrund der [[Referenzielle Transparenz|referenziellen Transparenz]] gibt es keine [[Wirkung (Informatik)|Nebeneffekte]]. Programme sind damit teilweise auswertbar und ermöglichen so zum Beispiel die Behandlung unendlicher Datenstrukturen.&lt;br /&gt;
* Beweise (zum Beispiel Korrektheitsbeweis, Beweise über Programmeigenschaften) sind dank mathematischer Basis (unter anderem [[Lambda-Kalkül]]) uneingeschränkt durchführbar.&lt;br /&gt;
* Architekturunabhängigkeit&lt;br /&gt;
* teilweise geringe Akzeptanz (man spricht gern von sogenannten Akademikersprachen)&lt;br /&gt;
&lt;br /&gt;
Zu den deklarativen Programmiersprachen gehören:&lt;br /&gt;
* [[Funktionale Programmierung|funktionale Sprachen]] (unter anderem [[Lisp]], [[ML (Programmiersprache)|ML]], [[Miranda (Programmiersprache)|Miranda]], [[Gofer]], [[Haskell (Programmiersprache)|Haskell]], [[F-Sharp|F#]], [[Scala (Programmiersprache)|Scala]])&lt;br /&gt;
* [[Logische Programmierung|logische Sprachen]] (unter anderem [[Prolog (Programmiersprache)|Prolog]])&lt;br /&gt;
* funktional-logische Sprachen (unter anderem Babel, Escher, Curry, [[Oz (Programmiersprache)|Oz]])&lt;br /&gt;
* mengen-orientierte Abfragesprachen (unter anderem [[SQL]])&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Beispiel [[Quicksort]]&amp;#039;&amp;#039;&amp;#039;: [[Haskell (Programmiersprache)|Haskell]] ist eine typische deklarative Programmiersprache. Der Programmierer beschreibt, &amp;#039;&amp;#039;was&amp;#039;&amp;#039; das Programm mit einer Eingabe macht, also wie mit welcher Eingabe umzugehen ist, wobei der Berechnungsablauf nicht von Interesse ist. Die Berechnungen erfolgen dann durch Wertemanipulation. Hauptkontrollstruktur bildet die [[Rekursion]], insbesondere aus Effizienzgründen die [[Endrekursion]]:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;Haskell&amp;quot;&amp;gt;&lt;br /&gt;
 quicksort [] = []&lt;br /&gt;
 quicksort (x:xs) = quicksort [n | n&amp;lt;-xs, n&amp;lt;x] ++ [x] ++ quicksort [n | n&amp;lt;-xs, n&amp;gt;=x]&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Funktionale Programmierung ===&lt;br /&gt;
&lt;br /&gt;
{{Hauptartikel|Funktionale Programmierung}}&lt;br /&gt;
&lt;br /&gt;
Die Aufgabenstellung und die bekannten [[Prämisse]]n werden hier als funktionaler Ausdruck formuliert. Das selbstständige Anwenden von Funktionsersetzung und Auswertung seitens des [[Interpreter]]s oder [[Compiler]]s lösen dann die Aufgabenstellung. Das Programm kann als Abbildung der Eingabe auf die Ausgabe aufgefasst werden.&lt;br /&gt;
&lt;br /&gt;
=== Logische Programmierung ===&lt;br /&gt;
&lt;br /&gt;
{{Hauptartikel|Logische Programmierung}}&lt;br /&gt;
&lt;br /&gt;
Die Aufgabenstellung und ihre [[Prämisse]]n werden als logische Aussagen (Regeln) formuliert (vgl. funktionale Programmierung, s.&amp;amp;nbsp;o.). Der [[Interpreter]] versucht dann, die gewünschte Lösungsaussage herzuleiten.&lt;br /&gt;
Bei anderen regelbasierten Sprachen wie [[OPS-5]], [[XSLT]] oder [[Prolog (Programmiersprache)|Prolog]] werden Regeln gegen eine Datenmenge auf ihre Instanziierbarkeit geprüft.&lt;br /&gt;
Aus allen Regelinstanziierungen wird eine (mehrere, alle) ausgewählt und die zur Regel gehörenden Anweisungen werden ausgeführt.&lt;br /&gt;
&lt;br /&gt;
=== Constraintprogrammierung ===&lt;br /&gt;
{{Hauptartikel|Constraintprogrammierung}}&lt;br /&gt;
&lt;br /&gt;
Bei der Constraintprogrammierung werden [[Einschränkung|Constraints]] definiert. Sie wird als natürliche Weiterentwicklung der logischen Programmierung verstanden. Logische und Constraintprogrammierung werden typischerweise in Kombination eingesetzt.&lt;br /&gt;
&lt;br /&gt;
== Objektorientierte Programmierparadigmen ==&lt;br /&gt;
&lt;br /&gt;
{{Hauptartikel|Objektorientierung}}&lt;br /&gt;
&lt;br /&gt;
[[Klasse (Objektorientierung)|Klassen]] sind instanziierbare Module und Grundelemente in der [[Objektorientierte Programmierung|objektorientierten Programmierung]]. Nach dem objektorientierten Programmierparadigma werden Objekte mit Daten und den darauf arbeitenden [[Routine (Programmierung)|Routinen]] zu Einheiten zusammengefasst. Im Unterschied dazu werden beim prozeduralen Paradigma die Daten von den die Objekte verarbeitenden Routinen getrennt gehalten. Ein [[Computerprogramm]] ist realisiert als eine Menge interagierender [[Objekt (Programmierung)|Objekte]].&lt;br /&gt;
&lt;br /&gt;
Objektorientierte Programmierung lässt sich gut mit der [[ereignisorientierte Programmierung|ereignisorientierten Programmierung]] kombinieren, z.&amp;amp;nbsp;B. bei der Programmierung interaktiver, [[Grafische Benutzeroberfläche|grafischer Benutzeroberflächen]].&lt;br /&gt;
&lt;br /&gt;
== Komponentenorientierte Programmierparadigmen ==&lt;br /&gt;
&lt;br /&gt;
Mithilfe der [[Komponentenbasierte Entwicklung|komponentenbasierten Entwicklung]] von Software mit abstrakten und [[Generische Programmierung|generischen]] [[Komponentenmodell]]en können [[Komponente (Software)|Softwarekomponenten]] mit streng definierten [[Schnittstelle#Softwareschnittstelle|Schnittstellen]] erstellt werden.&lt;br /&gt;
&lt;br /&gt;
Durch die [[Wiederverwendbarkeit]] von Software-Bausteinen kann der [[Softwaretechnik|Entwicklungsaufwand]] und die [[Programmfehler|Fehleranfälligkeit]] reduziert sowie die [[Informationssicherheit]] erhöht werden. Durch die vollständige und strenge [[Datenkapselung (Programmierung)|Datenkapselung]] wird ferner die [[Plattformunabhängigkeit|Portabilität]] von Daten und Programmen erleichtert.&lt;br /&gt;
&lt;br /&gt;
== Agentenorientierte Programmierung ==&lt;br /&gt;
&lt;br /&gt;
{{Hauptartikel|Agentenorientierte Programmierung}}&lt;br /&gt;
&lt;br /&gt;
Bei der &amp;#039;&amp;#039;agentenorientierten Programmierung&amp;#039;&amp;#039; steht der Begriff des [[Autonomie|autonomen]] und [[Planung|planenden]] [[Software-Agent|Agenten]] im Vordergrund, der selbstständig und in [[Kooperation]] mit anderen Agenten Probleme löst.&lt;br /&gt;
&lt;br /&gt;
== Aspektorientierte Programmierung ==&lt;br /&gt;
&lt;br /&gt;
{{Hauptartikel|Aspektorientierte Programmierung}}&lt;br /&gt;
&lt;br /&gt;
Bei der &amp;#039;&amp;#039;aspektorientierten Programmierung&amp;#039;&amp;#039; wird der objektorientierte Begriff der [[Klasse (Objektorientierung)|Klasse]] zum Aspekt erweitert und ermöglicht so [[Orthogonalität (Informatik)|orthogonale]] Programmierung.&lt;br /&gt;
&lt;br /&gt;
== Generative Programmierung ==&lt;br /&gt;
&lt;br /&gt;
{{Hauptartikel|Generative Programmierung}}&lt;br /&gt;
&lt;br /&gt;
Generative Programmierung ist ein Überbegriff für die programmatische Erzeugung von Sourcecode (Siehe Buch: Generative Programming, Krzysztof Czarnecki, W. Eisenecker).&lt;br /&gt;
&lt;br /&gt;
== Generische Programmierung ==&lt;br /&gt;
&lt;br /&gt;
{{Hauptartikel|Generische Programmierung}}&lt;br /&gt;
&lt;br /&gt;
In der &amp;#039;&amp;#039;generischen Programmierung&amp;#039;&amp;#039; wird versucht, die [[Algorithmus|Algorithmen]] für mehrere [[Datentyp]]en verwendbar zu gestalten.&lt;br /&gt;
&lt;br /&gt;
== Datenstromorientierte Programmierung ==&lt;br /&gt;
&lt;br /&gt;
{{Hauptartikel|Datenstromorientierte Programmierung}}&lt;br /&gt;
&lt;br /&gt;
Es wird von einem kontinuierlichen Datenfluss ausgegangen (meist Audio- oder Videodaten), der (oft in [[Echtzeit]]) verändert und ausgegeben wird.&lt;br /&gt;
&lt;br /&gt;
== Graphersetzung ==&lt;br /&gt;
&lt;br /&gt;
{{Hauptartikel|Graphersetzungssystem}}&lt;br /&gt;
&lt;br /&gt;
Bei der Graphersetzung werden die Daten in Form von [[Graph (Graphentheorie)|Graphen]] modelliert und die Berechnungen durch Graphersetzungsregeln spezifiziert, durch deren gesteuerte Anwendung ein gegebener Arbeitsgraph Stück für Stück umgeformt wird.&lt;br /&gt;
&lt;br /&gt;
== Konkatenative Programmierung ==&lt;br /&gt;
Konkatenative Programmierung zeichnet sich dadurch aus, dass Programme durch die einfache Verkettung von (Programmier-)Wörtern gebildet werden. Diese operieren alle auf derselben Datenstruktur, welche weitergereicht wird, ohne dass dazu eine weitergehende komplexe Syntax nötig wäre. Das führt dazu, dass eine natürlichsprachliche Syntax wie &amp;#039;&amp;#039;A B C&amp;#039;&amp;#039; möglich ist, für die in anderen Sprachen beispielsweise &amp;#039;&amp;#039;C(B(A(x)))&amp;#039;&amp;#039; geschrieben werden müsste. [[Konkatenative Programmiersprache]]n sind daher meistens aus Implementierungsgründen auch [[Stapelspeicher|stapelbasierte]] Sprachen, wie zum Beispiel [[Forth (Programmiersprache)|Forth]], [[Joy (Programmiersprache)|Joy]], [[Cat (Programmiersprache)|Cat]] und [[PostScript]].&lt;br /&gt;
Im Gegensatz dazu sind [[applikative Programmiersprache]]n solche, die Funktionen auf Argumente anwenden. In diese Kategorie fallen die meisten imperativen und funktionalen Sprachen.&amp;lt;ref name=&amp;quot;concatenative1&amp;quot;/&amp;gt;&amp;lt;ref name=&amp;quot;concatenative2&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Multiparadigmatische Programmierung ==&lt;br /&gt;
Multiparadigmatische Sprachen vereinigen verschiedenen Paradigmen miteinander.&lt;br /&gt;
Beispiele sind [[F-Sharp]], [[Rust (Programmiersprache)|Rust]], [[Lisp]], [[OCaml]], [[Swift (Programmiersprache)|Swift]], und [[Mathematica|Wolfram Language]].&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
{{Wiktionary}}&lt;br /&gt;
* {{Internetquelle&lt;br /&gt;
|url=http://cs.tu-berlin.de/cs/ifb/Ahmed/RoteReihe/2003/TR2003_15.pdf&lt;br /&gt;
|format=PDF; 461&amp;amp;nbsp;kB&lt;br /&gt;
|titel=Multiparadigmen-Programmiersprachen&lt;br /&gt;
|autor=Martin Grabmüller&lt;br /&gt;
|hrsg=[[Technische Universität Berlin]]&lt;br /&gt;
|zugriff=2013-04-03&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Literatur ==&lt;br /&gt;
* {{Literatur |Autor=John C. Mitchell, Krzysztof Apt |Titel=Concepts in Programming Languages |Verlag=Cambridge University Press |Ort= |Datum=2010 |ISBN=978-0-521-78098-8}}&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;Stroustrup&amp;quot;&amp;gt;{{Internetquelle&lt;br /&gt;
|url=https://www.stroustrup.com/hopl-almost-final.pdf&lt;br /&gt;
|autor=Bjarne Stroustrup&lt;br /&gt;
|titel=Conference on History of Programming Languages: Evolving a language in and for the real world: C++ 1991-2006&lt;br /&gt;
|zitat=C++ supports several programming styles or, as they are sometimes somewhat pretentiously called, “programming paradigms”.&lt;br /&gt;
|format=PDF&lt;br /&gt;
|zugriff=2010-09-20&lt;br /&gt;
|sprache=en&lt;br /&gt;
}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref Name=&amp;quot;GKIT&amp;quot;&amp;gt;{{Literatur&lt;br /&gt;
|Titel=Grundkurs IT-Berufe&lt;br /&gt;
|Verlag=Vieweg&lt;br /&gt;
|Autor=Andreas M. Böhm, Bettina Jungkunz&lt;br /&gt;
|ISBN=9783528059132&lt;br /&gt;
|Jahr=2005&lt;br /&gt;
}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;concatenative1&amp;quot;&amp;gt;{{Internetquelle&lt;br /&gt;
|url=https://concatenative.org/wiki/view/Concatenative%20language&lt;br /&gt;
|titel=Concatenative language&lt;br /&gt;
|zugriff=2010-09-20&lt;br /&gt;
|sprache=en&lt;br /&gt;
|hrsg=Concatenative }}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;concatenative2&amp;quot;&amp;gt;{{Internetquelle&lt;br /&gt;
|url=http://mitarbeiter.hs-heilbronn.de/~herzberg/Publications/ICSOFT.2009.pdf&lt;br /&gt;
|titel=Concatenative Programming&lt;br /&gt;
|autor=Dominikus Herzberg, Tim Reichert&lt;br /&gt;
|datum=2009&lt;br /&gt;
|zugriff=2010-09-20&lt;br /&gt;
|sprache=en&lt;br /&gt;
|format=PDF; 315&amp;amp;nbsp;kB&lt;br /&gt;
|archiv-url=https://web.archive.org/web/20120227190132/http://mitarbeiter.hs-heilbronn.de/~herzberg/Publications/ICSOFT.2009.pdf&lt;br /&gt;
|archiv-datum=2012-02-27&lt;br /&gt;
}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&amp;lt;ref name=&amp;quot;MSLIB&amp;quot;&amp;gt;{{Internetquelle&lt;br /&gt;
|url=https://msdn.microsoft.com/de-de/library/bb669144.aspx&lt;br /&gt;
|titel=Funktionale Programmierung oder imperative Programmierung?&lt;br /&gt;
|werk=[[MSDN]]&lt;br /&gt;
|hrsg=[[Microsoft]]&lt;br /&gt;
|zugriff=2013-04-03&lt;br /&gt;
}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/references&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Normdaten|TYP=s|GND=4308224-5}}&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Programmierparadigma| ]]&lt;/div&gt;</summary>
		<author><name>imported&gt;SchlurcherBot</name></author>
	</entry>
</feed>