Zuerst kamen sie

29

"Zuerst kamen sie ..." ist ein Gedicht von Martin Niemöller :

First they came for the Socialists, and I did not speak out-
Because I was not a Socialist.

Then they came for the Trade Unionists, and I did not speak out-
Because I was not a Trade Unionist.

Then they came for the Jews, and I did not speak out-
Because I was not a Jew.

Then they came for me-and there was no one left to speak for me.

Ihre Aufgabe ist es, die oben genannten auszugeben. Das ist , also gewinnt der kürzeste Code in Bytes!

Regeln

  • Sie können zusätzliche Leerzeichen einfügen, die das Erscheinungsbild nicht beeinflussen. Eine einzelne nachgestellte Zeile ist zulässig.
  • Andernfalls muss die Ausgabe genau übereinstimmen, einschließlich der Position der Zeilenumbrüche.
  • Gemäß den Metastandards können Sie eine Liste von Zeichenfolgen ausgeben. Sie müssen jedoch die Leerzeilen einfügen.

Beachten Sie, dass ich persönlich der Meinung bin, dass dies kein Schwachsinn ist, da das Gedicht so aufgebaut ist - es erfordert etwas Kreativität, um Golf zu spielen. Eine Metadiskussion darüber, ob dies ein Betrug ist oder nicht, finden Sie hier .

Stephen
quelle
7
Ich bin mir nicht sicher, was dies über die RickRoll-Herausforderung hinaus zur Website beiträgt.
AdmBorkBork
7
Ich mag das Hämmern von Dummköpfen hier nicht.
Programmierer5000
3
Meta Diskussion
programmer5000
11
Ausnahmsweise glaube ich nicht, dass dies ein Rickroll-Betrüger ist. Hier gibt es eine sinnvolle Struktur. Die Parallelität erlaubt unterschiedliche Strategien. Wiedereröffnung.
xnor
3
Die Struktur ist ein Argument dafür , ein Betrüger der Rickroll zu sein, nicht dagegen.
Peter Taylor

Antworten:

8

SOGL V0.12 , 103 102 101 Bytes

 →∑‘¾ο╤Ε9‘}ψ⁴‘¹"4¡‘Q°‘:¹¹I{ū_:¹"Eā/}l6⁸SÆ□⁴↔b⅜╬I℮;YΥηκ*█⅞F^Κ⅜⁸{x⅔⁵⅟╚?Z‘O}"Ι╚╬√⅔δηvΧχ⁷⁾Η<υL┼!Ο'μΠ⁵╝⁷‘⁾

Probieren Sie es hier aus!

Erklärung (hier habe ich die komprimierten Zeichenfolgen durch ersetzt .., um Platz zu sparen):

..‘.‘..‘                              push "socialist", "trade unionist" and "jew"
        ¹                             wrap in an array: ["socialist", "trade unionist", "jew"]
         "..‘..‘                      push "first" and "then"
                :                     duplicate the then
                 ¹                    wrap in an array: ["first","then","then"]
                  ¹                   wrap those two in an array: [["socialist", "trade unionist", "jew"], ["first","then","then"]]
                   I                  rotate clockwise: [[first,socialist], [then,trade unionist], [then,jew]]
                    {         }       for each do, pushing the array
                     ū                  uppercase the 1st letter of each word in the array - ["First", "Socialist"]
                      _                 splat the contents on the stack   "First", "Socialist"
                       :                duplicate the 2nd one             "First", "Socialist", "Socialist"
                        ¹               wrap in an array                  ["First", "Socialist", "Socialist"]
                         "..‘           push "ŗ they came for the ŗs, and I did not speak out-\nBecause I was not a ŗ." with ŗ replaced with its appropriate item in the array
                             O          output that
                               "..‘   push "then they came for me-and there was no one left to speak for me."
                                   ⁾  uppercase the 1st letter of it
                                      implicitly output it in a new line
dzaima
quelle
Könnten Sie bitte eine Erklärung hinzufügen?
Nzall
@ Nzall Vergaß zu schreiben
dzaima
@ Nzall Hinzugefügt eine Erklärung
Dzaima
7

6502 Maschinencode (C64), 229 Bytes

Irgendwie langweilig, machbar noch auf einem C64 mit einer etwas anständigen Menge an Bytes :)

00 C0 A9 17 8D 18 D0 A2 2C 86 FE A6 FE A0 C0 BD B6 C0 20 1E AB C6 FE 10 F2 60
C6 49 52 53 54 20 00 D4 48 45 4E 20 00 54 48 45 20 00 54 48 45 59 20 43 41 4D
45 20 00 46 4F 52 20 00 53 50 45 41 4B 20 00 41 4E 44 20 C9 20 44 49 44 20 4E
4F 54 20 00 4F 55 54 2D 0D 00 C2 45 43 41 55 53 45 20 C9 20 57 41 53 20 4E 4F
54 20 41 20 00 4D 45 2D 41 4E 44 20 54 48 45 52 45 20 57 41 53 20 4E 4F 20 4F
4E 45 20 4C 45 46 54 20 54 4F 20 00 4D 45 2E 00 2E 0D 00 53 2C 20 00 D3 4F 43
49 41 4C 49 53 54 00 D4 52 41 44 45 20 D5 4E 49 4F 4E 49 53 54 00 CA 45 57 00
0D 00 8C 35 3A 6B 2A 1F B4 90 B0 56 50 3A 41 93 B0 25 35 2A 1F B4 90 A1 56 50
3A 41 93 A1 25 35 2A 1F B4 90 97 56 50 3A 41 93 97 25 35 2A 18

Online-Demo

Verwendung: SYS49152

Erläuterung:

Da dies hauptsächlich Daten enthält, anstelle einer sinnlosen Disassembly-Auflistung, ist hier die ca65Assembly-Quelle im -Stil, die diesen Maschinencode erstellt:

.segment "LDADDR"
                .word   $c000           ; load address
.code
                lda     #$17            ; upper/lower mode
                sta     $d018           ; store in VIC register
                ldx     #revpoemsize    ; initialize ...
                stx     $fe             ; ... counter
loop:           ldx     $fe             ; load current position
                ldy     #$c0            ; highbyte of strings always same
                lda     revpoem,x       ; load lowbyte from table
                jsr     $ab1e           ; output 0-terminated string
                dec     $fe             ; decrement position
                bpl     loop            ; >=0 ? -> repeat
                rts                     ; done

first:          .byte   "First ", 0
then:           .byte   "Then ", 0
the:            .byte   "the ", 0
came:           .byte   "they came ", 0
for:            .byte   "for ", 0
speak:          .byte   "speak ", 0
didnot:         .byte   "and I did not ", 0
out:            .byte   "out-", $d, 0
wasnot:         .byte   "Because I was not a ", 0
noone:          .byte   "me-and there was no one left to ", 0
me:             .byte   "me.", 0
period:         .byte   ".", $d, 0
comma:          .byte   "s, ", 0
socialist:      .byte   "Socialist", 0
unionist:       .byte   "Trade Unionist", 0
jew:            .byte   "Jew", 0
p:              .byte   $d, 0

revpoem:        .byte   <me, <for, <speak, <noone, <came, <then, <p
                .byte   <period, <jew, <wasnot, <out, <speak, <didnot
                .byte   <comma, <jew, <the, <for, <came, <then, <p, <period
                .byte   <unionist, <wasnot, <out, <speak, <didnot, <comma
                .byte   <unionist, <the, <for, <came, <then, <p, <period
                .byte   <socialist, <wasnot, <out, <speak, <didnot, <comma
                .byte   <socialist, <the, <for, <came, <first
revpoemsize     = * - revpoem - 1
Felix Palmen
quelle
6

Python 3 , 209 Bytes

t='they came for '
s='First '
for i in'Socialist','Trade Unionist','Jew':s+=t+f'the {i}s, and I did not speak out-\nBecause I was not a {i}.\n\nThen '
print(s+t+'me-and there was no one left to speak for me.')

Probieren Sie es online!

-5 danke an Felipe Nardi Batista .

Erik der Outgolfer
quelle
@Heiteira Tut mir leid, aber ich kann den Teil "Handel" nicht aus der Ausgabe herauslassen.
Erik der Outgolfer
4

Perl 6 , 193 Bytes

say join ' they came for ','First'Socialist "Trade Unionist" Jew».map({"the {$_}s, but I did not speak out-
because I was not a $_.

Then"}),'me- and there was no one left to speak for me.'

Probieren Sie es online!

Massa
quelle
4

Perl 5 , 185 Bytes

print join" they came for ",First,(map"the ${_}s, and I did not speak out-
Because I was not a $_.

Then",Socialist,"Trade Unionist",Jew),"me-and there was no one left to speak for me."

Probieren Sie es online!

Danke an @ Massa für -3 Bytes!

Dom Hastings
quelle
Verwenden Sie Verbinden und Sie können weitere fünf Stühle oder so trimmen
Massa
@Massa nicht sicher, wie ich sehe! Noch mehr Hinweise?
Dom Hastings
Ich bin gerade auf meinem Handy, aber schau dir meine perl6-Antwort unten an!
Massa
@Massa Ahhh, schön! Vielen Dank! -3 am Ende :)
Dom Hastings
3

C 248 Bytes

Vielen Dank an @ Zacharý für das Speichern von 9 Bytes.

p(x,y){printf("%s they came for the %ss, and I did not speak out-\nBecause I was not a %s.\n\n",x,y,y);}f(){p("First","Socialist");p("Then","Trade Unionist");p("Then","Jew");puts("Then they came for me-and there was no one left to speak for me.");}

Probieren Sie es online!

Steadybox
quelle
Können Sie sdirekt in die printfAussage einsteigen?
Zacharý
@ Zacharý Ja, natürlich.
Steadybox
3

C # (.NET Core) , 248 246 242 Bytes

a=>{string b=@", and I did not speak out-
Because I was not a ",c=" they came for ",d="Socialist",e="Trade Unionist";return$@"First{c+d}s{b+d}.

Then{c+e}s{b+e}.

Then{c}the Jews{b}Jew.

Then{c}me-and there was no one left to speak for me.";}

Aktuelle Zeilenumbrüche haben mir ein paar Bytes erspart.

Probieren Sie es online!

2 Bytes gespart dank Business Cat

LiefdeWen
quelle
3

Python 3 , 203 Bytes

print('First',*[f'the {s}s, and I did not speak out-\nBecause I was not a {s}.\n\nThen'for s in['Socialist','Trade Unionist','Jew']],'me-and there was no one left to speak for me.',sep=' they came for ')

Probieren Sie es online!

Lynn
quelle
sep = ist ein genialer Zug! :-)
Massa
3

Befunge-93 , 348 Bytes

".em rof kaeps ot tfel eno on saw ereht dna-em rof emac yeht nehT"52*:v
v"d not speak out-"*25"Because I was not a "<   p5-2*89p1-2*89"vvJew."<
> "id I dna ">",sweJ>v"67+2p66+5p     v     ^p2-2*89"vTrade Unionist."<
>"tsriF">:#,v>",stsinoinU edarTv"67+3pv     ^   p3+66p40"^_Socialist."<
>"nehT"52*: v>",stsilaicoS@"67+3p     >" eht rof emac yeht "

Probieren Sie es online!

ItsJ0el
quelle
3

Befunge, 293 274 270 Bytes

62574732594932584832001v_@#:\0\!<
0-*84g+3/"P"\%"P"::+p00<_|#:-1g0
84!-"*":g+3/"P"\%"P"::+1\<+1_$#:^#-2\,-**
&First0 they came for %the Qs, and I did not speak out-*Because I was not a (.**
ThenOme-and there was no one left to speak for me.*$Jew*Socialist/Trade Unionist

Probieren Sie es online!

Dies ist eine andere Herangehensweise an die vorhandene Befunge-Lösung. Es verwendet eine Art verknüpfte Liste, um ein Wörterbuch der gebräuchlichen Phrasen zu speichern, und hat dann nur eine einfache Liste von Werten auf dem Stapel, die die Reihenfolge darstellt, in der die Phrasen ausgegeben werden sollen.

James Holderness
quelle
2

Netzhaut , 176 Bytes


 Socialists, Trade Unionists, Jews,1me-and there was no one left to2for me.
( .+?)s,
1the$& and I did not2out-¶Because I was not a$1.¶¶Then
^
First
1
 they came for 
2
 speak 

Probieren Sie es online! Erklärung: Die 1und 2sind nur wiederholte Zeichenfolgen, die lang genug sind, um dedupliziert zu werden. Das Firstwird später hinzugefügt, um es einfacher zu machen, den Platzhalter für den sich wiederholenden Teil auszuwählen: "Sie kamen für die [Gruppe], und ich habe nicht gesprochen - weil ich keine [Gruppe] war. Dann", der durch erweitert wird die zweite Stufe.

Neil
quelle
2

JavaScript (ES6), 231 227 223 221 Byte

_=>`First${t=" they came for "}the Socialist${a=`s, and I did not speak out-
Because I was not a `}Socialist${t=`.

Then`+t}the ${(u="Trade Unionist")+a+u+t}the Jew${a}Jew${t}me-and there was no one left to speak for me.`

Versuch es

o.innerText=(
_=>`First${t=" they came for "}the Socialist${a=`s, and I did not speak out-
Because I was not a `}Socialist${t=`.

Then`+t}the ${(u="Trade Unionist")+a+u+t}the Jew${a}Jew${t}me-and there was no one left to speak for me.`
)()
<pre id=o>

Zottelig
quelle
2

Java 8, 250 236 Bytes

o->{String t=" they came for ",r="First";for(String s:"Socialist,Trade Unionist,Jew".split(","))r+=t+"the "+s+"s, and I did not speak out-\nBecause I was not a "+s+".\n\nThen";return r+t+"me-and there was no one left to speak for me.";}

Probieren Sie es hier aus.

Kevin Cruijssen
quelle
2

JavaScript (ES6), 210 207 206 203 Bytes

Eine andere Herangehensweise an meine andere Lösung ergab, dass es sich lohnte, sie zu einer eigenen Antwort zusammenzufassen, nachdem die Herausforderung wieder eröffnet wurde.

_=>`First${["Socialist","Trade Unionist","Jew"].map(x=>t+`the ${x}s, and I did not speak out-
Because I was not a ${x}.

Then`,t=` they came for `).join``+t}me-and there was no one left to speak for me.`

Versuch es

o.innerText=(
_=>`First${["Socialist","Trade Unionist","Jew"].map(x=>t+`the ${x}s, and I did not speak out-
Because I was not a ${x}.

Then`,t=` they came for `).join``+t}me-and there was no one left to speak for me.`
)()
<pre id=o>

Zottelig
quelle
2

Gaia , 179 175 Bytes

⇓“the ”3ṁ“s, and I did not speak out-¶Because I was not a ”2ṃ“.¶¶Then
“ they came for 
First”“Socialist“Trade Unionist“Jew”↓¦⇑“me-and there was no one left to speak for me.”]$

Probieren Sie es online!

Erläuterung

Hier sind 3 Funktionen definiert (1 pro Zeile). Der unterste wird zuerst aufgerufen. wird durch Zeilenumbrüche ersetzt.

⇓“the ”3ṁ“...”2ṃ“.¶¶Then  First helper function. Argument: s
⇓                         Push "Then they came for "
 “the ”                   Push "the "
       3ṁ                 Bring s to the top
         “...”            Push "s, and I did not speak out-¶Because I was not a "
              2ṃ          Push a copy of s
                “.¶¶Then  Push ".¶¶Then"


“ they came for   Helper function. No arguments.
“ they came for   Push " they came for "


First”“..“..“..”↓¦⇑“...”]$  Main function.
First”                      Push "First"
      “..“..“..”            Push the list ["Socialist" "Trade Unionist" "Jew"]
                ↓¦          Call the first helper function on each.
                  ⇑         Push "Then they came for "
                   “...”    Push "me-and there was no one left to speak for me."
                        ]$  Wrap the stack in a list and join with no separator.
Geschäfts-Katze
quelle
2

Bubblegum , 149 132 129 Bytes

00000000: 9d4d b515 0241 14cc af8a c991 1e70 0991  .M...A.......p..
00000010: 02fe bbfd e7b7 cb1a 523d ee0e d9f8 7453  ........R=....tS
00000020: 631d 5cc2 2b84 5432 2265 760c 6315 a654  c.\.+.T2"ev.c..T
00000030: a4d6 d92a 480a 0c20 5201 a91c ec8c 2987  ...*H.. R.....).
00000040: f2ae 1634 3924 6f79 6b2e c8ee 4dba 14eb  ...49$oyk...M...
00000050: 4130 4958 3ed9 9e18 128c a94c 95fc e3e0  A0IX>......L....
00000060: b6fd fa65 c88b 1fa7 7795 e77b 25d7 488a  ...e....w..{%.H.
00000070: 9d68 f898 8792 8c82 2307 a78e bb87 647d  .h......#.....d}
00000080: 03                                       .

Probieren Sie es online!

Langweilige Bubblegum Antwort. Wurde bereits von SOGL geschlagen, das ist also gut.

Guthaben für -17 Bytes geht an Dom Hastings

-3 bytes von ovs

Nnnes
quelle
132 Bytes . Immer noch nicht zu schlagen SOGL!
Dom Hastings
@DomHastings Ich glaube nicht, dass du jemals SOGL mit Bubblegum schlagen wirst ...
Erik the Outgolfer
@EriktheOutgolfer Darüber bin ich auch sehr froh! Ich würde gerne etwas Zeit investieren, um damit zu spielen, unglaublich ausdrucksstark!
Dom Hastings
129 Bytes
Ovs
2

SQL 269 Bytes

declare @ char(18)='They came for the ',@a char(49)='s, and I did not speak out-
Because I was not a '
print'First '+@+'Socialist'+@a+'Socialist.

'+@+'Trade Unionist'+@a+'Trade Unionist.

'+@+'Jew'+@a+'Jew.

'+@+' me-and there was no one left to speak for me.'
Michael Salzmann
quelle
1
Hallo, willkommen bei PPCG! Ich habe Ihren Beitrag bearbeitet, um einige Formatierungen hinzuzufügen. Was den eigentlichen Code betrifft, "Then "so fehlen meines Erachtens die führenden Wörter in den letzten drei Sätzen, und der letzte Satz lautet jetzt "They came for the me-..."statt "Then they came for me-...".
Kevin Cruijssen
2

PowerShell, 211 202 198 Bytes

-13 Bytes dank @Veskah

$a,$b='First',' they came for'
'Socialist','Trade Unionist','Jew'|%{"$a$b the $_`s, and I did not speak out-
Because I was not a $_.
";$a='Then'}
"$a$b me-and there was no one left to speak for me."

Probieren Sie es online!

Ich bin sicher, das kann ein bisschen runtergolfen werden.

Gabriel Mills
quelle
1

Proton , 219 Bytes

t='they came for'for i:'Socialist','Trade Unionist','Jew'print(i[0]=='S'? 'First':'Then',t,'the',i+'s, and I did not speak out-
Because I was not a',i+'.
')print('Then',t,'me-and there was no one left to speak for me.')

Probieren Sie es online!

HyperNeutrino
quelle
1

Python 2, 246 Bytes

Zum ersten Mal habe ich versucht, die Zeichenfolge zu komprimieren und zurückzugeben. Offensichtlich sind mehr Bytes erforderlich als bei anderen Ansätzen. Gibt es noch etwas zum Golfen?

import zlib,base64
print zlib.decompress(base64.b64decode('eJyd0DEOwjAMBdA9p/gHoD0EAxJdgQNYiatGtDaKU1XcvikUdSkDjLb/f4NPMVlG7vgJTwOj1bRMuKiP1EfLdgBJwBkhBohm2IPpDh1z5Y7saTQux4nsdaStWDt37Vh27JtElT/oT++73PD0K1oq+97A1QKVZeI1DxVGz215mK7uO1nPf1Zu5g=='))

Probieren Sie es online!

Simon
quelle
1

Röda , 204 Bytes

{t="Then"c=" they came for";["First","Socialist",t,"Trade Unionist",t,"Jew"]|[`$_$c the ${_}s, and I did not speak out-
Because I was not a $_2.

`];[`$t$c me-and there was no one left to speak for me.`]}

Probieren Sie es online!

fergusq
quelle
1

PHP, 194 Bytes

First<?=$t=" they came for ";foreach([Socialist,"Trade Unionist",Jew]as$s)echo"the ${s}s, and I did not speak out-
Because I was not a $s.

Then$t"?>me-and there was no one left to speak for me.

Probieren Sie es online aus .

Titus
quelle
1

C (gcc) , 244 Bytes

f(c){for(c=0;c<3;printf("%s they came for the %ss, and I did not speak out-\nBecause I was not a %2$s.\n\n",c++?"Then":"First",c^2?c?"Trade Unionist":"Socialist":"Jew"));puts("Then they came for me-and there was no one left to speak for me.");}

Probieren Sie es online!

Cleblanc
quelle
1

Python 3 , 208 Bytes

print(' they came for '.join(["First"]+[f"the {i}s, and I did not speak out-\nBecause I was not a {i}.\n\nThen"for i in['Socialist','Trade Unionist','Jew']]+['me-and there was no one left to speak for me.']))

Probieren Sie es online!

-1 danke an @Step Hen

Massa
quelle
1
Then "for-> Then"forund Sie schlagen die anderen Python-Antworten :)
Stephen
@StepHen Vielen Dank, dass Sie den zusätzlichen Platz bemerkt haben! :-)
Massa
1

Clojure, 285 Bytes

(fn[](doseq[i(range 4):let[c["Socialist""Trade Unionist""Jew"""]f #(if(< i 3)% %2)]](println(if(= i 0)"First""Then")"they came for"(str(f(str"the "(c i)"s, ")"me-")(f"and I did not speak out-\n""and there was no one left to speak for me.")(f(str"Because I was not a "(c i)".\n")"")))))

Dies war eine lustige kleine Herausforderung. Ich habe das meiste ein paar Mal fast komplett umgeschrieben, weil mir klar wurde, dass ich etwas übermäßig Umständliches mache. Es gibt noch ein paar Bereiche, die möglicherweise ausgebessert werden könnten, aber ich bin ziemlich zufrieden mit dem Ergebnis, auch wenn ich das Original nur um 54 Byte "komprimiere".

repl.io

Eine Erklärung finden Sie im Code vor dem Golfen:

(defn ftc []
  ; Loop over the lines numbers for reference
  (doseq [i (range 4)
          :let [; Added a dummy last "class" since "me-" wasn't necessary,
                ;  and only having 3 elements was causing OOB errors.
                classes ["Socialist" "Trade Unionist" "Jew" ""]

                ; A helper function that executes either its first or second argument
                ;  depending on if the current line is one of the first 3 lines.
                if-first-three-lines #(if (< i 3) % %2)]]

    ; An implicit space is inserted between each of the args to println
    (println
      ; Decide on the opener
      (if (= i 0) "First" "Then")

      "they came for"

      ; Start string concatenation because the implicit space
      ;  begins complicating things.
      (str
        ; Decide which "class" the line belongs to
        (if-first-three-lines
          (str "the " (classes i) "s, ")
          "me-")

        ; Decide on the line ending
        (if-first-three-lines
          "and I did not speak out-\n"
          "and there was no one left to speak for me.")

        ; Then pick the trailer
        (if-first-three-lines
          (str "Because I was not a " (classes i) ".\n")
          "")))))
Karzigenat
quelle
1

Japt , 153 150 149 147 Bytes

`{=` ey ¯´ f `}´-d tre °s no e ¤ft  speak f ´.`i`Sáû\E
TÎè UÍát
Jew`·rÈ+U+`e {Y}s, d I ¹d not speak t-
Be¯«e I °s not a {Y}.

Tn`}`Fir¡

Probier es aus

Dank Oliver 1 Byte gespart

Zottelig
quelle
1

05AB1E , 124 119 Bytes

.•RYÁ Wö∍®Ø’áÅÚ)’Òü•'x¡™vy„€Û‚½#NĀ虓ÿ€»‹é€‡€€ ÿs,€ƒ Iƒ§€–¡´€Ä-“©¶y“ƒ« I€¥€–€… ÿ.“.ª¶¶}®19£“€á-and€Ç€¥€¸€µ…¸€„¡´€‡€á.“J

Probieren Sie es online aus.

Erläuterung:

.•RYÁ Wö∍®Ø’áÅÚ)’Òü•
                  # Push compressed string "socialistxtrade unionistxjew"
 'x¡             '# Split it on "x": ["socialist","trade unionist","jew"]
                 # Convert each word to Titlecase: ["Socialist","Trade Unionist","Jew"]
v                 # Loop `y` over each of these strings:
 y                #  Push string `y`
 „€Û‚½            #  Push dictionary string "first then"
      #           #  Split on spaces: ["first","then"]
       N          #  Push the index of the loop
        Ā         #  Truthify it (0 remains 0; every other number becomes 1)
         è        #  Use it to index into the list
                 #  Titlecase it
 “ÿ€»‹é€‡€€ ÿs,€ƒ Iƒ§€–¡´€Ä-“
                  #  Push dictionary string "ÿ they came for the ÿs, and I did not speak out-"
                  #  where the "ÿ" are automatically filled with the strings at the top of the stack
  ©               #  Save it in the register (without popping)
                 #  Push a newline "\n"
 y                #  Push string `y` again
 “ƒ« I€¥€–€… ÿ.“  #  Push dictionary string "because I was not a ÿ."
                  #  where the "ÿ" is automatically filled again with the string
                #  Sentence case it: "because" becomes "Because"
 ¶¶               #  Push two newline characters "\n\n"
}                 # After the loop:
®                 # Push the string from the register:
                  #  "Then they came for the Jews, and I did not speak out-"
 19£              # Only leave the first 19 characters: "Then they came for "
“€á-and€Ç€¥€¸€µ…¸€„¡´€‡€á.“
                  # Push dictionary string "me-and there was no one left to speak for me."
J                 # Then join everything on the stack together (and output implicitly)

Sehen Sie sich meinen Tipp 05AB1E an (Abschnitte Verwendung des Wörterbuchs und Komprimieren von Zeichenfolgen, die nicht Teil des Wörterbuchs sind ), um zu verstehen, warum:

  • .•RYÁ Wö∍®Ø’áÅÚ)’Òü• ist "socialistxtrade unionistxjew"
  • „€Û‚½ ist "first then"
  • “ÿ€»‹é€‡€€ ÿs,€ƒ Iƒ§€–¡´€Ä-“ ist "ÿ they came for the ÿs, and I did not speak out-"
  • “ƒ« I€¥€–€… ÿ.“ ist "because I was not a ÿ."
  • “€á-and€Ç€¥€¸€µ…¸€„¡´€‡€á.“ ist "me-and there was no one left to speak for me."
Kevin Cruijssen
quelle
-4

Text , 348 Bytes

First they came for the Socialists, and I did not speak out-
Because I was not a Socialist.

Then they came for the Trade Unionists, and I did not speak out-
Because I was not a Trade Unionist.

Then they came for the Jews, and I did not speak out-
Because I was not a Jew.

Then they came for me-and there was no one left to speak for me.

Dies ist die kürzest mögliche Version in ihrer Sprache und entspricht der Antwort von Befunge-93 zum Zeitpunkt des Schreibens.

IFcoltransG
quelle
2
Wie bei so ziemlich allen "Text" -Antworten ist dies langweilig und faul
Jo King,
@ Jo King Das Bemerkenswerte ist, dass es die gleiche Länge wie die Befunge-93-Antwort ist.
IFcoltransG