Sind C oder C ++ reguläre Sprachen ? Wenn nicht, in welche Kategorie stellen wir die Programmiersprachen wie C / C ++, Perl, Python?
Sind C oder C ++ reguläre Sprachen ? Wenn nicht, in welche Kategorie stellen wir die Programmiersprachen wie C / C ++, Perl, Python?
Antworten:
Die einzige mir bekannte universelle Definition für "reguläre Sprache" ist eine, die mit einem deterministischen endlichen Automaten analysiert oder als echter regulärer Ausdruck ausgedrückt werden kann (nicht die erweiterten REs in vielen aktuellen Implementierungen). Ein regulärer Ausdruck kann in einer Reihe von Zeichen mit möglicherweise unendlichen Wiederholungen und alternativen Auswahlen geschrieben werden.
Da sowohl C als auch C ++ das Verschachteln von Klammern, Klammern und Klammern in beliebige Tiefen ermöglichen, sind sie keine regulären Sprachen (Einzelheiten finden Sie im Pumping Lemma).
(1 + 2) * 6
?