Welche allgemeinen Tipps haben Sie zum Golfen in LOLCODE? Ich bin auf der Suche nach Ideen, die sich auf Code-Golf-Probleme im Allgemeinen anwenden lassen, die zumindest etwas spezifisch für LOLCODE sind. (zB "Kommentare entfernen" ist keine Antwort). Bitte posten Sie einen Tipp pro Antwort.
14
Antworten:
Definieren Sie Variablen nicht mithilfe der Syntax,
variable R value
sondern mithilfe der SyntaxI HAS A variable ITZ value
.Wenn Sie eine Variable
n
gleich 1 setzen wollen,ist nur 5 Bytes, während
ist 15 Bytes.
quelle
In vielen LOLCODE-Implementierungen, z. B. in repl.it ,
HAI
undKTHXBYE
, die Programme beginnen und beenden, sind keine weiteren erforderlich . In Implementierungen, in denen sie erforderlich sind, ist die Versionsnummer nachHAI
nicht erforderlich (zHAI 1.2
. B. ).Ebenso wird die
STDIO
Bibliothek in der Regel standardmäßig geladen,CAN HAS STDIO?
ist also auch nicht erforderlich.quelle
In vielen Fällen ist es kürzer, Variablenwerte aus STDIN zu lesen, als eine Funktion zu definieren. Beachten Sie jedoch, dass beim
GIMMEH
Lesen von Eingaben aus STDIN immer einYARN
(dh ein String) gelesen wird . Sie können jedoch die dynamische Eingabe von LOLCODE nutzen und 0 hinzufügen, um sie in eine umzuwandelnNUMBR
.Beispielsweise,
Die Definition
n
umfasst 26 Bytes, einschließlich Zeilenumbrüchen. Vergleichen Sie dies mit einer benutzerdefinierten Funktion:Dies erfordert 28 Bytes.
Beachten Sie, dass Sie auch mit 1 multiplizieren können, um in a zu konvertieren
NUMBR
, dies erfordert jedoch 4 Bytes mehr als die Summe:quelle
n IS NOW A NUMBR
ist ein Byte kürzer alsn R SUM OF n AN 0
Beachten Sie beim Drucken des Werts einer Variablen in STDOUT Folgendes:
ist viel kürzer als
Auch, wenn ein abschließender Zeilenumbruch akzeptabel ist,
die standardmäßig eine nachgestellte Zeile enthält, ist kürzer als
das unterdrückt die newline.
quelle