Ich lerne immer noch Haskell, und ich frage mich, ob es eine weniger wortreiche Möglichkeit gibt, die folgende Aussage mit einer Codezeile auszudrücken:
%Vor% Erzeugt:
[(1,""),(2,""),(3,"fizz"),(4,""),(5,"buzz"),(6,"fizz"),(7,""),(8,""),(9,"fizz"),(10,"buzz"),(11,""),(12,"fizz"),(13,""),(14,""),(15,"fizzbuzz"),(16,""),(17,""),(18,"fizz"),(19,""),(20,"buzz"),(21,"fizz"),(22,""),(23,""),(24,"fizz"),(25,"buzz"),(26,""),(27,"fizz"),(28,""),(29,""),(30,"fizzbuzz")
, usw.
Es fühlt sich an, als würde ich die Syntax mehr bekämpfen, als ich sollte. Ich habe in Haskell andere Fragen dazu gesehen, aber ich suche nach dem optimalen Weg, dies in einer einzigen Aussage auszudrücken (zu versuchen, zu verstehen, wie man die Syntax besser bearbeitet).
Ich denke, der Grund, warum Sie das Gefühl haben, mit der Syntax zu kämpfen, ist, dass Sie zu viele Typen mischen.
Anstatt zu versuchen zu drucken:
%Vor%Denken Sie einfach an das Drucken von Zeichenfolgen:
%Vor%Mein Versuch:
%Vor%Um einen Int in einen String zu konvertieren, verwenden Sie:
%Vor%