Perl - Ruby-Mapping?

7

Ich habe mich an einem neuen Projekt beteiligt, bei dem Perl ein Muss ist. Ich komme von einer guten Ruby-Stiftung und möchte eine schnelle Einführung oder Zuordnung zwischen Perl und Ruby, da ich gehört habe, dass Perl und Ruby sehr nahe bei der Syntax sind (wissen Sie nichts über Features).

  1. Haben Sie Empfehlungen für mich?
  2. Welches großartige Perl-Buch empfehlen Sie als erweiterte Referenz?
  3. Was ist zur Zeit die gebräuchlichste Version von Perl?
khelll 17.10.2009, 15:48
quelle

5 Antworten

16

Ich zweite Nathan Buch recs, obwohl ich auch Anfang Perl erwähnen würde. Zwei Bonus-Features sind (1) es ist frei verfügbar (und rechtlich) online in seiner ersten Ausgabe (Hinweis: this Die Seite läuft gerade aus, und ich bin mir nicht sicher, ob das temporär ist oder nicht) und (2) sie deckt ungefähr so ​​viel wie Learning Perl und Intermediate Perl zusammen. Eine Konsequenz ist, dass es manchmal elementarer ist, dass Sie wollen. ( Learning Perl geht schneller und nimmt ein bisschen mehr - was eine gute Sache sein kann.)

Sie können dies auch überprüfen: < em> Ruby von Perl von Rubys Website. Denke einfach umgekehrt nach.

In den Versionen ist 5.10.1 stabil, aber Sie werden auf einen Bereich stoßen. Meistens wirst du 5.8.x und höher finden, vermute ich. (Genau wie bei Ruby 1.9.1 ist es stabil, aber Sie werden viele Orte finden, die immer noch 1.8.6 oder höher verwenden.)

Da ich etwas in die entgegengesetzte Richtung gehe (ich kenne Perl einigermaßen gut, und ich benutze Ruby immer öfter), kann ich Dinge erwähnen, die für mich herausragen:

  1. In Perl erhalten Sie eine automatische Konvertierung zwischen Strings und Zahlen (und Sie müssen nicht explizit nach einem Float-Ergebnis fragen, indem Sie .to_f verwenden oder ein Element zu einem Float machen).
  2. Semikolons sind nicht optional, um Anweisungen in Perl zu beenden. Ähnlich sind Klammern in Perl weniger häufig als in Ruby. (Dies wird schnell komplex, aber zum Beispiel müssen Sie Klammern für den Test in einer Bedingung oder einem while -Block haben.)
  3. 0 (string, integer und float), undef und die leere Zeichenfolge werden in booleschen Tests als false ausgewertet.
  4. Es gibt keine separaten Booleschen true und false .
  5. Sie unterscheiden Datentypen mit sigils: $foo ist ein Skalar; @foo ist ein Array; %foo ist ein Hash. (Vor allem Arrays werden Sie ärgern: Sie sind keine Instanzvariablen.)
  6. Sie müssen Objekte in Perl explizit mit dem Schlüsselwort my definieren.
  7. Arrays in Perl werden automatisch zusammengefügt, wenn sie kombiniert werden. (Dies beißt mich ständig in Ruby.)
  8. Kontext, Kontext, Kontext. In Perl hängt eine enorme Menge von dem, was Ihr Code tatsächlich tut, davon ab, zu verstehen, in welchem ​​Kontext Sie sich befinden. Hier ist ein Link für ein Anfang, aber es ist ein großes Thema mit vielen Ecken und Kanten.

(Beachten Sie, dass ich den 1000-Pfund-Gorilla im Raum nicht erwähnt habe. OO ist ein Teil von dem, was Perl ist und tun kann, aber es ist nicht im Zentrum von Perl, wie es in Ruby ist.)

    
Telemachus 17.10.2009, 16:12
quelle
13

Versionen

In der Perl Survey 2007 *** nutzten die meisten Perl-Programmierer Perl 5.8, wobei 87% 5.8.x mindestens zeitweise verwendeten und 5.8.8 die gebräuchlichste Single-Version war. Eine Minderheit hat mindestens 5.6.x für einige Projekte verwendet, und eine kleinere (aber gelegentlich recht laute) Minderheit benutzt 5.005. Seit diesem Zeitpunkt ist Perl 5.10 veröffentlicht worden und es ist noch nicht klar, was die Adoptionsrate ist; wahrscheinlich sind viele Unternehmen konservativ und laufen mit 5.8.8 oder 5.8.9, aber viele von dem, was Sie als "prominente Hacker" bezeichnen könnten, verwenden 5.10.1 und benötigen manchmal sogar ihre Funktionen.

Referenzen

  • Programming Perl ist ein Gewinner für alle, die bereits Erfahrung mit Programmierern haben und schnell mit Perl arbeiten wollen. Die aktuelle Ausgabe ist die dritte, die (leider) Perl 5.6.0 entspricht.
  • Die Reihe Lern-Perl , Fortgeschrittene Perl , Mastering Perl wird ebenfalls empfohlen; Lern-Perl beginnt ziemlich langsam, da es auf Anfänger ausgerichtet ist, aber es deckt schließlich alle wichtigen Funktionen der Sprache ab, einschließlich einiger, die 2000 bei Programming Perl nicht existierten wurde zuletzt überarbeitet.
  • Perldocs. Bitte vernachlässigen Sie nicht die Perldocs. Der Hauptindex ist perldoc perl , oder Sie können online unter perldoc.perl.org lesen. Dies sind fast so gute Referenz wie Programming Perl , weil in der Tat ein anständiger Teil dieses Buches aus den Perldoks gezogen wird. Ich würde zumindest einen gründlichen Abschaum von Perlsyn, Perlop, Perlrun, Perlvar, Perl, Perlobj, Perlmod, Perlunintro, Perlreftut und Perldsc empfehlen. Einmal durch perlfunc zu lesen, ist auch keine schlechte Idee.
  • Effective Perl Programming ist ein Buch, das ich immer empfohlen habe, um zu lernen, wie man Probleme mit einer Perl-Geisteshaltung angehen kann. Sein 1998 Veröffentlichungsdatum beschränkt ihre Brauchbarkeit ein bisschen, aber ich denke immer noch, es ist lesenswert - und zum Glück, brian d foy und Josh McAdams arbeiten an einer aktualisierten Ausgabe, wegen (ich glaube - traue mir nicht zu weit auf dem ) März 2010. [ Und die zweite Ausgabe ist jetzt hier - brian ]
  • Perlmonks ist eine großartige Ressource, besonders wenn Sie daran denken, die Suchfunktion zu verwenden. Viele Fragen wurden dort gestellt und beantwortet, und die besten Antworten sind für die Nachwelt indiziert, zusammen mit Listen von Ressourcen wie Büchern und Online-FAQs.

***: Ich würde gerne einen Link zu The Perl Survey 2007 zur Verfügung stellen, aber leider wurde die perlsurvey.org Domain verfallen. Eine Kopie des die Ergebnisse PDF können bei Github und der mostly- finden Rohdaten sind in CPAN als Data::PerlSurvey2007 .

    
hobbs 17.10.2009 16:59
quelle
4
  

Haben Sie Empfehlungen für mich?

Perl.org ist eine gute Seite, um einige Ressourcen zu bekommen

  

Welches großartige Perl-Buch empfehlen Sie als erweiterte Referenz?

Programming Perl und Learning Perl sind sehr nett, aber schau auch hier hier

  

Was ist die häufig verwendete Version von Perl?

Hängt von Ihrer Plattform ab, werfen Sie einen Blick hier

    
Nathan Campos 17.10.2009 15:54
quelle
4

Die Leute sagen mir immer wieder, Das Aufnehmen von Perl ist veraltet und sie haben Recht, aber es ist eine so prägnante Einführung, die ich empfehlen würde Lesen Sie es und dann direkt in Intermediate Perl und Perl Best Practices sowie Perl Cookbook . Das Kochbuch ist großartig, wenn Sie durch konkrete, mundgerechte Beispiele besser lernen.

Außerdem empfehle ich wirklich , die FAQ-Liste zu lesen bevor Sie etwas anderes tun.

    
Sinan Ünür 17.10.2009 22:17
quelle
0

Ich empfehle auch "Perl programmieren", "Perl Best Practices" und das "Perl Cookbook".

Das Buch "PBP" ist gut, nicht weil es dir Regeln lehrt, sondern weil es dich dazu bringt, innezuhalten und darüber nachzudenken, warum du Dinge auf eine bestimmte Art tun solltest und eine fundierte Entscheidung fällst, wenn du dich von Conways empfohlenem Weg entfernst .

Was die Dokumentation betrifft, benutze ich oft die Dokumente von CPAN, da sie die aktuellsten sind und Hyperlinks anbieten, etwas, das wir nicht von den lokalen perldocs auf unserer Festplatte bekommen.

Eines der Dinge, die ich an Ruby liebte, als ich anfing, es im Vergleich zu Perl zu benutzen, war Gems vs. CPAN. Eine Menge Edelsteine ​​aktuell zu halten scheint so viel einfacher zu sein als eine Reihe von CPAN-basierten Modulen.

Und wie Sinan sagt, sind die FAQs eine gute Lektüre. Ich habe sie viele Male gelesen und neu gelesen, weil das Wissen gut ist, um in deinem Kopf zu bleiben.

Und obwohl sie ziemlich unverblümt sein können, sind die PerlMonks eine wundervolle Ressource. Einfach zu suchen und zu lesen, wie sie Dinge zu tun empfehlen, kann dein Perl-Bewusstsein auf mehrere Ebenen heben, selbst wenn du sie nicht mit einer direkten Frage beschäftigst.

Und, in der Art des Mönchs, betrachte Perls Hashes und lerne darüber, sie zu schneiden. Sie sind das Shiz.

    
the Tin Man 22.10.2010 22:13
quelle

Tags und Links