Ich bin da halt etwas pingelig
das sollte dann aber in beide Richtungen gehen, denn das was Du in Deinem Post oben zusammengetragen hast ist exakt dasselbe was ich in meinem von Dir beanstandeten Post geschrieben habe:
Das das Skript zuerst einen Fehler hatte der es nicht in der legalen Version laufen lies, das dieser Fehler dann korrigiert wurde aber das Skript trotzdem auch in der zweiten Version fehlerhaft war, weil der zweite Fehler mit der @option immer noch drin war.
Und das das skript in einigen Versionen funktioniert liegt wahrscheinlich an unterschiedlich implementierten Ruby-Interpretern. Strings werden in den meisten Programiersprachen intern als arrays aus Buchstaben gespeichert. Deshalb kann die Referenz auf dieselben Werte zeigen, auch wenn die Befehle logisch falsch sind und als solche vom Interpreter abgefangen werden sollten.