Literale sind feste Werte von einem bestimmten Typ für die es eine Notation/Syntax gibt. Also beispielsweise Zeichenketten und Zahlen. Das haben die meisten Programmiersprachen. Python bietet beispielsweise auch Syntax um beispielsweise Tupel, Listen, Wörterbücher, und Mengen direkt als Wert in den Quelltext zu schreiben. So etwas haben nicht alle Programmiersprachen.
Code: Alles auswählen
# Liste als literal:
values = [42, 23, 4711]
# Hätte man das nicht, müsste man das mit Code ausdrücken:
values = list()
values.append(42)
values.append(23)
values.append(4711)
Weiss nicht wie das bei StarBASIC ist, aber beim CBM BASIC auf meinem C64 müsste man ein Array mit Werten auch durch Code füllen, wie bei den meisten klassischen BASIC-Dialekten:
oder mit DATA-Zeilen und einer Schleife:
Code: Alles auswählen
10 DIM A(2):FOR I=0 TO 2:READ A(I):NEXT
20 DATA 42,23,4711
In FreeBASIC gibt's zwar keine Array-Literale aber immerhin Syntax für „initializers“, wo man beim deklarieren des Arrays die Werte angeben kann:
Doppelte Unterstriche bei den Filtern sind die Trennstellen zwischen Attributen und ggf. am Ende einem Operator oder eine Funktion die alle in den Namen gequetscht werden. Ist halt der Hack den man in der Python-Syntax machen kann, weil die Methode am Ende diesen Schlüssel als Zeichenkette bekommt und die auseinandernehmen und interpretieren kann wie sie will. Was das am Ende bedeutet ist ja nicht Teil der Python-Syntax, sondern was auch immer der Code der diese Argumente verarbeitet, daraus macht.