Schrift
[thread]2099[/thread]

Python rockz! (Seite 6)

Leser: 3


<< |< 1 ... 3 4 5 6 7 8 9 >| >> 83 Einträge, 9 Seiten
#Kein Kommentar
 2007-06-11 20:25
#23790 #23790
User since
2007-06-09
575 Artikel
HausmeisterIn
[default_avatar]
perl ist einfach viel schöner als python vor allem wegen den Sigils ($,@,%) und der Pfeilsyntax
Gerade weil wir alle in einem Boot sitzen, sollten wir froh sein, dass nicht alle auf unserer Seite sind
Ronnie
 2007-06-11 21:02
#23791 #23791
User since
2003-08-14
2022 Artikel
BenutzerIn
[default_avatar]
[quote=#Kein Kommentar,11.06.2007, 18:25]perl ist einfach viel schöner als python vor allem wegen den Sigils ($,@,%) und der Pfeilsyntax[/quote]
Sigils werden mit Perl 6 nicht mehr kontextabhängig verwendet und der Pfeiloperator wird zum Punkt - wie in anderen Sprachen auch. Beides tut mir nicht wirklich weh. Da gibt es viele andere Punkte pro oder vs. einer Sprache.
pq
 2007-06-11 21:43
#23792 #23792
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
ich mag an perl einfach die ausdrucksstärke - ob nun punkt oder
pfeil, macht da kaum einen unterschied. map, grep und die
ganzen sachen, die für andere ein grund sind zu sagen "man
kann perl so schlecht verstehen" - die mag ich.
es gibt viele, die kritisieren perl als unleserlich - dabei hängt es
doch von den programmierern bzw. von den jeweiligen teamleitern
und coding-guidelines ab. die phpler beschweren sich doch auch
immer gleich, wenn man php als unsicher bezeichnet und sagen,
das liegt an den programmierern.
dann gibt es wiederum die einen, die sagen, perl lässt einem zu
viele möglichkeiten und die anderen, die z.B. sagen, dass man mit DBI
nur das eine breit unterstützte datenbankinterface hat, schränke
einen ein. manchmal habe ich das gefühl, die leute suchen sich
einfach ihre gründe gegen eine sprache, egal ob sie nun sinn machen oder nicht.
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
#Kein Kommentar
 2007-06-11 23:34
#23793 #23793
User since
2007-06-09
575 Artikel
HausmeisterIn
[default_avatar]
Quote
Sigils werden mit Perl 6 nicht mehr kontextabhängig verwendet und der Pfeiloperator wird zum Punkt

ne oder? :-(

na ja perl ist auch so sehr gut\n\n

<!--EDIT|#Kein Kommentar|1181590503-->
Gerade weil wir alle in einem Boot sitzen, sollten wir froh sein, dass nicht alle auf unserer Seite sind
sid burn
 2007-06-12 00:20
#23794 #23794
User since
2006-03-29
1520 Artikel
BenutzerIn

user image
[quote=#Kein Kommentar,11.June.2007, 21:34]
Quote
Sigils werden mit Perl 6 nicht mehr kontextabhängig verwendet und der Pfeiloperator wird zum Punkt

ne oder? :-(

na ja perl ist auch so sehr gut[/quote]
Also das Sigils nicht mehr Kontextabhängig sind, finde ich soagr gut. Das erhöht meiner Meinung nach die Lesbarkeit, da man jetzt sofort sieht wo ein Array ist, oder wo ein Hash ist, ohne auf die Klammern danach zu achten. Eckig oder Geschweift.

Zum anderen wird dadurch das derefernzieren einfacher. Wenn du hinter einem Skalar eckige Klammern schreibst dann wird das Skalar automatisch als Array Derefernziert.

Das der Punkt durch ein Pfeil ersetzt wird finde ich persönlich schade. Ich finde der Pfeil hat eine große Ausdruckskraft. Einen Punkt übersieht man irgendwie so leicht.

Aber das sind alles kleinigkeiten die nicht wirklich von belang sind.


---------


Ansonsten würde ich mitlerweile auch sagen das ich mich tiefgehend mit der Sprache beschäftigt habe und kann dieses rumgeheule von wegen Perl sei ja so schwer lesbar kein bisschen mehr nachvollziehen.

Klar kann man es tun. Klar gibt es Golfing und klar gibt es Obfuscating, und es gibt sicherlich auch kryptische Einzeiler, aber was hat das ganze mit einem richtigen "Program" zu tun? Absolut gar nix.

Was ist den bitte schön in Perl so schwer lesbar? Die Regulären Ausdrücke? Die sind in allen Sprachen gleich. (Kleine Dialekte jetzt mal ausgenommen) aber Regexe kann man nicht zu Perl zählen. Diese kann man in Ruby, Python, Java, C oder sonstige Sprache genauso benutzen und sind dort genauso kryptisch. Eher im Gegenteil hat Perl hier noch Meiner Meinung nach die Vorteile das Regexe hier so leicht zu Verwenden sind. Wenn ich mir PHP mit seinen 50 Regex Funktionen anschauen die alle inkositent sind, und man praktisch immer eine Liste neben sich haben muss wird mir schlecht. Das was man mit Regexen eben sehr schnell und eben mal Lösen kann wird in anderen Sprachen umso weniger gemacht. Einfach deswegen weil der Aufwand zu groß ist. Objekt erstellen, Regex hinzufügen, werte aus dem Objekt lesen ...

Ansonsten was bleibt den sonst noch so übrig? Ein if () {} Konstrukt? Eine while() oder for() Schleife? Die sind doch in nahezu jeder Programmiersprache identisch. Ob ich jetzt geschweifte Klammern nutze oder wie in Ruby start/end-wörter macht doch gar kein unterschied.

Ansonsten hat Perl seine 200? eingebauten Funktionen die man einmalig lernt. Man lernt die Spezialvariable $_ und für Subroutinen @_ und das war es. 50%? der Funktionen nutzen vielleicht $_. Das Verhalten lernt man einmalig und das war es dann auch.

Was macht Python den so leserlich? Meckert es etwa herum wenn man eine Variable nicht den Inhalt entsprechend genannt hat? Oder wenn man eine Subroutine schlecht benannt hat? Oder sind es die nicht sichtbaren Whitespace die man zum Einrücken benutzen muss?

Wenn es das letztere ist, dann ist Python durch "perltidy" obsolote.
Nicht mehr aktiv. Bei Kontakt: ICQ: 404181669 E-Mail: perl@david-raab.de
ptk
 2007-06-12 00:44
#23795 #23795
User since
2003-11-28
3645 Artikel
ModeratorIn
[default_avatar]
[quote=sid burn,11.06.2007, 22:20]Was ist den bitte schön in Perl so schwer lesbar? Die Regulären Ausdrücke? Die sind in allen Sprachen gleich. (Kleine Dialekte jetzt mal ausgenommen) aber Regexe kann man nicht zu Perl zählen. Diese kann man in Ruby, Python, Java, C oder sonstige Sprache genauso benutzen und sind dort genauso kryptisch. Eher im Gegenteil hat Perl hier noch Meiner Meinung nach die Vorteile das Regexe hier so leicht zu Verwenden sind. Wenn ich mir PHP mit seinen 50 Regex Funktionen anschauen die alle inkositent sind, und man praktisch immer eine Liste neben sich haben muss wird mir schlecht. Das was man mit Regexen eben sehr schnell und eben mal Lösen kann wird in anderen Sprachen umso weniger gemacht. Einfach deswegen weil der Aufwand zu groß ist. Objekt erstellen, Regex hinzufügen, werte aus dem Objekt lesen ...[/quote]
Gibt es eigentlich andere Sprachen, bei denen Regexps ähnlich schön in die Sprache integriert sind wie bei Perl? Also bei denen man keine "compile"-Methoden anstoßen muss, bevor man mit Regexps arbeiten möchte; bei denen man die gruppierten Werte leicht herausbekommt ohne sich die Finger zu brechen; bei denen man nicht doppelt escapen muss, weil Patterns als Strings geschrieben werden und deshalb leicht Backslashmonster entstehen.
sid burn
 2007-06-12 01:09
#23796 #23796
User since
2006-03-29
1520 Artikel
BenutzerIn

user image
[quote=ptk,11.June.2007, 22:44]Gibt es eigentlich andere Sprachen, bei denen Regexps ähnlich schön in die Sprache integriert sind wie bei Perl? Also bei denen man keine "compile"-Methoden anstoßen muss, bevor man mit Regexps arbeiten möchte; bei denen man die gruppierten Werte leicht herausbekommt ohne sich die Finger zu brechen; bei denen man nicht doppelt escapen muss, weil Patterns als Strings geschrieben werden und deshalb leicht Backslashmonster entstehen.[/quote]
Ja, in Ruby dürfte es so ähnlich sein. Jedenfalls ist da eine Regex auch eine Regex, und kein String der zu einer Regex umgewandelt wird, so das man alles doppelt quoten muss.

Allerdiengs muss man glaube ich auch erstmal eine Regex definieren und in eine Variable Speichern, und das ist dann ein Objekt mit Methoden. Und dann muss man es mit .match gegen etwas matchen lassen.

Naja irgendwie so, kenne mich zu wenig mit Ruby aus. Aber irgendeiner kennt sich doch hier mit Ruby aus?
Nicht mehr aktiv. Bei Kontakt: ICQ: 404181669 E-Mail: perl@david-raab.de
lichtkind
 2007-06-12 01:58
#23797 #23797
User since
2004-03-22
5679 Artikel
ModeratorIn + EditorIn
[Homepage]
user image
In Rebol sind regexen eine sprache in der sprache und recht elegant gelöst hab aber nur gelesen nocht nicht selber ausprobiert. das probplem mit rebol ist halt das es nicht freie fortware ist und kein cpan hat und in vielem nicht ganz perls ausdrucksstärke.

wegen dem punkt in perl6. klar übersieht man den punkt leichter was manchmal nachteil ist aber bei objekthierachrien wie zb in GUI programmierung ist das angenehm und der hintergedanke ist noch ein anderer. weil in perl6 der punkt sekundäre sigil wird für autogenerierte geter und seter methoden. dafür wäre der pfeil ganz umständlich.\n\n

<!--EDIT|lichtkind|1181599385-->
Wiki:Tutorien in der Wiki, mein zeug:
kephra, baumhaus, garten, gezwitscher

Es beginnt immer mit einer Entscheidung.
Strat
 2007-06-12 11:18
#23798 #23798
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
In Tcl sind die funktionen regex ( = m/.../ ) und regsub ( = s/.../.../ ) sprachbestandteil. aber dort sind sie halt prozeduren und nicht so direkt eingebaut. und sowas aehnliches wie tr/.../.../ gibt's auch (string map), nur ausnahmsweise schoener, weil man damit nicht auf 1:1-Ersetzungen festgelegt ist, sondern auch ein zeichen durch mehrere ersetzen kann oder umgekehrt.\n\n

<!--EDIT|Strat|1181632911-->
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
betterworld
 2007-06-13 05:34
#23799 #23799
User since
2003-08-21
2613 Artikel
ModeratorIn

user image
[quote=RPerl,04.06.2007, 21:29]\r?\n = chomp ?

Koennte man dann:
Code (perl): (dl )
my @array = split(/\r?\n/,$result);


mit chomp umschreiben? Oder ist das nur bei Schleifen "relevant"?
[/quote]
Ist \r?\n denn absolut portabel?  Ich dachte, es gäbe auch Systeme, die schlicht \r verwenden.  Um mir über so etwas keine Gedanken machen zu müssen, verwende ich lieber so etwas:
Code (perl): (dl )
my @array = $result =~ m{[^\r\n]+}g;

Das sieht hübsch aus und filtert die abartigsten Zeilenumbrüche heraus.  Nachteil ist allerdings, dass es nebenbei auch noch Leerzeilen ignoriert.
Ich mag split ja sowieso nicht besonders und finde, dass es viel zu viel gebraucht wird ;) In diesem Fall nervt split übrigens auch, weil es nach einem finalen Zeilenumbruch noch eine leere Zeile vermutet.

In manchen Schleifen braucht man auch kein chomp, wenn man sich auf die ansonsten oft unwillkommenen Eigenschaften von $ in regulären Ausdrücken verlässt:
Code (perl): (dl )
1
2
3
4
while (my $line = <>) {
    warn 'Not an integer!' unless /^-?\d+$/;
    ...
}
(Das löst natürlich nicht das Problem der Zeilenumbrüche von unterschiedlichen Betriebssystemen.)

[quote=renee,03.06.2007, 19:12]Irgendwann wirst Du es noch schaffen, allen das local einzuimpfen *daumendrück*[/quote]
Danke :)  Ihr könnt auch gerne alle mithelfen ;)\n\n

<!--EDIT|betterworld|1181698695-->
<< |< 1 ... 3 4 5 6 7 8 9 >| >> 83 Einträge, 9 Seiten



View all threads created 2007-06-03 17:08.