Matti Maekitalo: PHP vs. PERL

Beitrag lesen

use Mosche;

Das problem ist nur das man die nötigen Module bei einfachen vhosts selten installiert bekommt.

Jein. Erstens kann man viele Module auch im lokalen Webspace installieren (das müssten eigentlich alle in Perl geschriebenen sein, oder?) und zweitens kann man seinen Provider fragen, ob er das Modul installiert. Außer bei Riesenprovidern und natürlich bei Sicherheitsbedenken sollte auch das kein Problem sein. Man muss halt fragen.

Timo und du redet in verschiedenen Sprachen. Zur Erklärung: Timo verwendet ein Apache/Perl Modul namens HTML::Mason (http://www.masonhq.com). Um es kurz darzustellen: das ist quasi Perl in einer HTML-Dokumenten (obwohl ein paar meiner Mason-Dokumente wenig mit HTML zu tun haben :-)). HTML::Mason gleicht eher (von der Anschauungsweise) PHP denn Perl, obwohl du lupenreines Perl programmierst.

Ob man HTML::Mason als Benutzer sinnvoll installieren kann, halte ich für fraglich (es erfordert doch einige Perl-Module). Da kann man sinnvoll nur den Weg über den Provider gehen.

Das hat auch recht wenig mit perl-wissen prahlerei zu tuhn. Ich bin der überzeugung das "einfache" perl-cgi scripte im vergleich zu php unterlegen sind. Da werden teilweise mit enormen aufwand Lösungen zusammen gebastelt vor denen ich mich Programmiertechnisch nur verneigen kann - das Problem ist jedoch erstaunlich häufig das man sie mit dem richtigen Perl Modul mit einem fingerschnippen hätte erledigen können.

Auch jein. PHP liefert halt viele Erweiterungen, die in Perl erstmal als Modul implementiert werden mussten, schon mit. Das liegt daran, daß PHP sich auf Web spezialisiert hat und Perl aus einer ganz anderen Ecke stammt (die so ziemlich nix mit Web am Hut hat). Es werden aus Unkenntnis der Sprache häufig auch in PHP die übelsten Konstrukte gebastelt, die ein einziger Befehl ersetzen könnte.

Und mit HTML::Mason ist dieser PHP Vorteil eben vollständig weg. Man hat ein vollkommenes Perl und kann doch ähnlich sehr webspezifisch programmieren - das ist da alles schon eingebaut.

use Tschoe qw(Matti);

--
$a=n(1001010);print chr($a+=$_)for(0,43,-2,1,-84,65,13,1,5,
-12,-3,13,-82,48,21,13,-6,-76,72,-7,2,8,-6,13,-104);sub n{
$b=0;$_=0;for($c=length$_[0];$c;--$c){$_+=_($b)if substr$_
[0],$c-1,1;$b++;}$_}sub _{($d)=@_;for($e=1;$d--;$e*=2){}$e}