Perl a Titanik (RE: Zmrazeni RH6.0cz)

Milan Sorm xsorm na informatics.muni.cz
Středa Srpen 18 21:59:08 CEST 1999


Tue, Aug 17, 1999 ve 10:23:45PM +0200 Petr Snajdr napsal:
# Nejlepe celou zalezitost IMHO posal kolega kdyz rekl:
# "Perl je jazyk, ktery za kazdou cenu se snazi uhadnout
# co tim programator myslel". Me na nem vadi rad dalsich veci 

S tim nezbyva nez souhlasit.

# pocinaje "podivnou" objektovosti (Wall konecne sam
# priznava, ze to zadne objekty nejsou :)), celkova

Hmm, jenze jde o to, co jako objektovost charakterizujete. Napr. splnuje to
vsechno, co ma OOP splnovat - zapouzdrenost, dedicnost, polymorfii.

# roztristenost jazyka, velice podivna prace s nekterymi

Co je to roztristenost jazyka ? 

# "slozitejsimi" datovymi typy, taky to ze radu

Jaka ? Vsechno se ridi presnymi pravidly. Co je to slozity datovy typ ?
Nejtezsi pokud vim je tam odkaz, ale to snad ani jako datovy typ nelze
posuzovat.

# veci umi, ale s jejich pouzitim je problem

hmm, man perl je totalne postacujici, pokud chcete jeste komfort, existuji
dve skvele knihy - Programming Perl a Advanced Programming Perl. Po jejich
precteni naopak zjistite, ze je opravdu malo veci, co se s Perlem neda
napsat.

# jelikoz se dane veci nepouzivaji dusledne (vyjimky)

vyjimky perl umi:

eval {
   neco;

   die "vyjimka";

};
print "Vyjimka" if $@ =~ /vyjimka/;

a pokud se vam nelibi tato klicova slova, nic nebrani tomu si zavest vlastni
- treba try, catch a throw:

sub try (&@) {
  my ($try,$catch) = @_;
  eval { &$try };
  if ($@) {
    local $_ = $@;
    &$catch;
  }
}
sub catch (&) { $_[0]; }
sub throw ($) { die shift; }

a uz muzete psat:

try {
  neco;

  throw "vyjimka";
} catch {
  /vyjimka/ and print "Vyjimka";
};


atd. Cili je to jazyk uzasnych moznosti, ne ?

# atd. je to prote jen takovy trochu komplikovany
# shell.

Kdyby existoval perlsh, mel by jedinou nectnost - byl by prilis velky do
pameti. Ale jinak by to byla skvela vec a spise vzdychejme, skoda, ze nemame
shell na bazi Perlu. C-ckari ho maji, Tcl-ste ho maji.... :(

# ------------------------------------------------------
# Zacit se dnes ucit Perl je jako koupit si listek na Titanic
# ------------------------------------------------------

Kdyby Titanic ridil Perl, nesel by ke dnu.
Zacit se dnes ucit Perl ? Vcera jiz bylo pozde.
Proc prepisujes ten C program ? Jo jina platforma. Hmm, kdybys znal Perl...

atd.

milan


Další informace o konferenci Linux