On Wed, 25 Oct 2000 [EMAIL PROTECTED] wrote: > From: [EMAIL PROTECTED] > Subject: What perl's bad for > > A mozhno li bez flame war spokoyno i konstruktivno > obyasnit` svoyu nepriyazn` k perl. Vot vse, chto ya nashel > v seti po etomu povodu: > -------------------------------------------------------- > What perl's bad for > > User interface design Perl has Tk, but syntax is a bit ugly comparing with Tcl or Python, Perl has Gtk, but its interface is no better than C interface, and one expects more from scriting language.
Perl has CDK (Curses development kit) and I've never seen anything comparable for Tcl or Python or Scheme. > Proprietary file handling I've seen nothing better in scripting language land. pack and unpack are cool. > Character-by-character processing Any scripting language is bad for it. But typically there are other ways to do same job. > int main(void) > { > int chars=0, words=0, lines=0, inwords=0, c; > while ((c=getchar()) != EOF) { > chars++; > if (c=='\n') > lines++; > if (isspace(c)) > inword=0; > else if (!inword++) > words++; > } > printf("%d %d %d\n", chars, words, lines); > } while (<>) { lines++; chars+=length($_); words+=scalar(split("\W+)); } print "lines=$lines words=$words chars=$chars\n"; На самом деле проблемы перла начинаются не с этого. 1. There is more than one way to do it, and sometimes it might be misleading. 2. В синтаксисе есть множество исключений из правил. При написании маленьких программ это удобно, при написании больших - приводит к трудноустранимым ошибкам. 3. Интерфейс для писания C-шных расширений к перлу громоздок и сложен по сравнению с Tcl и Python. А сила скриптовых языков заключается ровно в том, что на них можно не делать то, что на них делать неэффективно. 4. И как же меня злит в перле отсутствие командной подстановки в строки... -- Victor Wagner [EMAIL PROTECTED] Programmer Office:7-(095)-785-09-72 Communiware.Net Home: 7-(095)-135-46-61 http://www.communiware.net http://www.ice.ru/~vitus