| Merkmal | Natürliche Sprache | Formale Sprache |
|---|---|---|
| Verwendung | Alltagssprache, Kommunikation | Mathematik, Logik, Programmierung |
| Struktur | Unstrukturiert, oft mehrdeutig | Streng geregelt, eindeutig |
| Grammatik | Komplex, mit Ausnahmen | Klar definiert, ohne Ausnahmen |
| Zielgruppe | Menschen | Menschen & Maschinen |
| Flexibilität | Hoch (z. B. Metaphern, Umgangssprache) | Gering (nur definierte Ausdrücke erlaubt) |
| Eindeutigkeit | Gering (Kontextabhängigkeit) | Hoch (jede Aussage klar interpretierbar) |
| Beispiel | „Wenn es regnet, nehme ich einen Schirm.“ | „Wenn A, dann B“ bzw. „A ⇒ B“ |
„Ich sehe den Mann auf dem Berg mit dem Fernrohr.“
Grammatik [G] ist ein 4-Tupel G = (N,T,P,S)
mehr dazu auf http://gts.lernsax.de/d.demeny/aufgaben.html
Beschreiben, wie ein Nichtterminalsymbol durch eine Kombination aus Terminal- und/oder Nichtterminalsymbolen ersetzt werden kann
Darstellungsformen
<Symbol> ::= <Regel>
EBNF erlaubt kompaktere Schreibweise mit zusätzlichen Symbolen:
mehr dazu auf https://info-wsf.de/erweiterte-backus-naur-form-ebnf/
E-Mail:
G=(N,T,P,S)
N={S,NAME,SUB,TLD,DOMAIN}
T={a,b,@,.}
P={
S -> NAME@SUBDOMAIN.TLD,
Name -> aName|bName|a|b,
SUB -> NAME.|NAME.SUB|ε,
DOM -> NAME,
TLD -> NAME
}
S=S
Float:
G = {N,T,P,S}
N = {S,VALUE,ZIFFER}
T = {0,1,2,3,4,5,6,7,8,9,.,+,-}
P = {
S->+VALUE.VALUE|-VALUE.VALUE,
VALUE->ZIFFER VALUE | ZIFFER,
ZIFFER->0|...|9}
S = S
Durch schrittweises Anwenden von Produktionsregeln, können Wörter abgeleitet werden. Eine Ableitung endet, wenn das Wort nur noch aus Nichtterminalen besteht.
Die Ableitung kann dargestellt werden
Beispiel:
Ableitungs des Wortest ababa aus den Produktionsregeln
S -> a | b | EPSILON | a S a | b S b

Die Chomsky-Hierarchie ist eine Klassifikation formaler Sprachen. Die Einteilung in die Typen erfolgt danach, welche Produktionsregeln in einer Grammatik erlaubt sind und welche Berechnungsmodelle die Sprache erzeugen oder erkennen können:

Linke Seite ist ein Nichtterminal, rechte Seite ist höchstens ein Terminal gefolgt von einem Nichtterminal (rechts- oder linkslinear)
Linke Seite besteht aus genau einem Nichtterminal (A → γ)
Länge der rechten Seite ≥ Länge der linken Seite (αAβ → αγβ), Kontext A darf nur im selben Kontext ersetzt werden
Keine Einschränkung: α → β, wobei α mindestens ein Nichtterminal enthält
jeweils ein Beispiel für Typ 1-3: Beispiele_Chomsky
Ein Automat ist wie ein „Prüfer“, der entscheidet, ob ein gegebenes Wort zu einer bestimmten Sprache gehört.
Die Sprachtypen der Chomsky-Hierachie können von verschiedenen Automatentypen erkannt werden.

5-Tupel 𝐴=(𝑄, 𝑠,Σ, 𝐹, 𝛿) mit:
Die von einem endlichen Automaten A akzeptierte Menge von Worten L(A) ist:
'L(A)= {w ∈ Σ* | δ(s,w) ∈ F}'
L(A) heißt auch die Sprache von A.
2 Beispielaufgaben + weitere Übungsaufgaben: Beispielaufgaben_Automaten
Ein regulärer Ausdruck ist in der theoretischen Informatik eine Zeichenkette, die der Beschreibung von Mengen von Zeichenketten mit Hilfe bestimmter syntaktischer Regeln dient.
hier eine Seite für regex https://regex101.com/
Eine Tabelle zu den herkömmlichen Ausdrücken: Ausdrücke
Ein Compiler ist ein Computerprogramm, das Quellcode einer bestimmten Programmiersprache (z.B.: Pyhton, JavaScript, C++, usw.) in einer Form überstezt, die von einem Computer ausgeführt werden können (Maschienencode oder Zwischensprachen wie Assembly). Er übersetzt zuert um danach den Code (übersetzten) ausführen zu können.
Ein Interpreter ist ein Computerprogramm, das den Quellcode einer bestimmten Programmiersprache (z.B.: Python, Java, PHP, usw.) direkt Zeile für Zeile einliest, übersetzt und sofort ausführt, ohne zuvor eine eigenständige ausführbare Datei zu erzeugen.
¶ Weitere Quellen:
- INF-SCHULE: https://inf-schule.de/automaten-sprachen/interpretercompiler
- YouTube Video von Florian Dalwigk über Compiler und Interpreter: https://www.youtube.com/watch?v=DYsQj5bJaZI
- YouTbe Video von Maik Aicher über Compiler (detailiert): https://www.youtube.com/watch?v=D60WqAjxzk4
- Studyflix Video über Compiler: https://studyflix.de/informatik/compiler-624/video