2012-06-14 3 views
6

Gibt es eine Ressource im Web, die ich suchen kann, um perl Version (5.8.1 vs current_stable) spezifische Sprache Syntax zu finden, ohne zu perldoc gehen und zwischen den Versionen wechseln dann suchen Sie nach Sprachelement Ich suche nach, ob es in der ausgewählten Version existiert?Perl Version spezifische Syntax Ressource

Das scheint nur ein beschissener Weg und ich dachte, ich würde den Bienenstock fragen, ob es besser ist.

Zum Beispiel, wenn ich nach 'say' suche, würde ich gerne wissen, dass es in Perl 5.10+ erschien.

Vielen Dank.

edit-- Als eine Anmerkung, der Grund, den ich suche, finde ich oft, dass ich alte Versionen von Perl unterstützen muss, die ich "nicht" upgraden kann, aber noch Code für schreiben muss. Dies wird zu einer mühsamen Aufgabe, wenn bestimmte Dinge nicht wie erwartet funktionieren, von 5.12 bis 5.8, und ich hoffte nur, einen besseren Weg zu finden (und ich dachte, dass ich nicht der einzige in dieser Situation sein kann).

edit-- Ich war im Grunde auf der Suche nach einem All in One Referenzbereich ideal über das Internet verfügbar. Klicken Sie auf "say" und finden Sie heraus, dass es in Version 5.10 verfügbar ist, wenn die Funktion aktiviert ist oder dass eine Funktion gelernt hat, wie man in Version Z verschiedene Argumente annimmt. Bei vielen Sprachen, wenn Sie eine Kernklasse/lib/modul anzeigen Sie finden eine ganze Versionshistorie für ihre Argumente, Methoden, Funktionen, usw. Soweit es um Hilfsprogramme und Module geht, sieht perlver auch gut aus.

+2

[Perl-Code auf unterschiedliche Version] (http://stackoverflow.com/questions/3301082/can-i-make-sure-perl-code-written-on-5-10-will-run-on-5 -8) – tuxuday

+1

Perl :: MinimumVersion sieht ziemlich genial aus - es ist einfach nicht als irgendeine Art von "Referenz" -Material verfügbar und ist möglicherweise keine narrensichere Lösung. Definitiv etwas, worüber man beim Schreiben von neuem Code nachdenken sollte (vielleicht werde ich einen Debug-Modus zu einem neuen Code hinzufügen, der alle Zeilen durch MinimumVersion oder sowas führt) – AndrewPK

+0

Ein Online-Validator, der mir die benötigte Mindestversion für den eingegebenen Code sagt nett. –

Antwort

4

Ein weiterer nicht so schön Weg ist durch Delta gehen: http://perldoc.perl.org/index-history.html Sie immer versuchen, durch sie suchen könnten:

grep say perl*delta.pod 

Aber ja, das ist nicht schön und einfach.

+0

Ich habe diese Methode auch schon über das Internet benutzt - das Problem ist: 1. Die Webmethode saugt. 2. Die Grep-Methode erfordert, dass die Perl-Version in irgendeiner Weise lokal verfügbar ist. : -/ – AndrewPK

+0

Markieren Sie dies als die Antwort, wie es derzeit scheint die beste Option. – AndrewPK

1

Die einzigen Schlüsselwörter, die versionsabhängig sind, werden im feature doc Seite dokumentiert:

perldoc feature 

Die einzelnen Keywords auch erwähnen, wenn sie hinzugefügt wurden; perldoc -f say enthält dies:

Dieses Schlüsselwort ist nur verfügbar, wenn die "Say" -Funktion aktiviert ist; siehe Funktion. Alternativ können Sie den aktuellen Scope mit "v5.10" oder höher verwenden.

Es ist wirklich eine sehr kurze Liste, wie auch immer. Fast alles, was in 5.14 funktioniert, funktioniert auch in 5.6.

+3

Das betrifft nicht die Funktionen, die keine Schlüsselwörter hinzufügten, wie drei-arg-open (Perl 5.6.0), Änderungen an was das 'utf8'-Pragma tut, benannte Capture-Puffer (Perl 5.10.0) und so weiter .... es ist wirklich komplexer als nur die Keywords, imho. – DavidO

+0

Diese Antwort ist nützlich für Keywords und solche, ich habe diese Methode auch schon früher verwendet, aber ich stimme mit DavidO überein, dass dies auch in seiner eigenen Hinsicht saugt. Ich bin überrascht, dass es so aussieht, als ob das, wonach ich gesucht habe, nicht existiert. – AndrewPK

0

Jede Perl Version enthält ein perlXXXdelta Dokument, das erklärt die Änderungen eingeführt und neue Funktionen (in der Theorie, schließlich) nicht in kleineren Version Versionen eingeführt, müssen Sie lese nur perl5160delta, perl514delta, perl512delta, perl510delta und perl58delta ...

In jedem Fall haben Sie Recht, es wird nett sein, ein Dokument zu haben, das die wichtigen Änderungen und die Versionen, in denen sie eingeführt wurden, zusammenfasst.

Verwandte Themen