ďťż
 
czego nie lubicie w perlu? ďťż
 
czego nie lubicie w perlu?
Zobacz wiadomości
 
Cytat
A gdyby tak się wedrzeć na umysłów górę, / Gdyby stanąć na ludzkich myśli piramidzie, / I przebić czołem przesądów chmurę, / I być najwyższą myślą wcieloną. . . Juliusz Słowacki, Kordian
Indeks BCB i MySQL subiekt gt fototapeta
 
  Witamy

czego nie lubicie w perlu?



=?ISO-8859-2?Q?Pawe=B3_Matejski?= - 10-03-2007 00:04

  Jaroslaw Zabiello wrote:
> Dnia Fri, 09 Mar 2007 12:23:33 +0100, moldovenu napisał(a):
>
>> Masz więc kawa na ławę:
>> foon = 213
>> fooh = bla_bla(foon)
>>
>> Na perla można narzekać, można go wyśmiewać i w dobrym tonie jest czasem
>> żartowanie z niego ;) ale gdy przychodzi do konkretów:
>>
>> - w pythonie/ruby unikniemy tego błędu tylko, jeśli testy wychwycą go
>> - w perlu unikniemy tego błędu jw + na etapie kompilacji.
>
> Echhh. Zarowno Python jak i Ruby tez to potrafi :)
>
> python -Qwarnall test.py
> Traceback (most recent call last):
> File "test2.py", line 2, in ?
> fooh = bla_bla(foon)
> NameError: name 'bla_bla' is not defined
>
> ruby -w test.rb
> test.rb:2: undefined method `bla_bla' for main:Object (NoMethodError)

No, ale tu nie chodzi o błąd w nazwie funkcji, tylko o literówkę w zmiennej po
lewej stronie =. !

--
P.M.





=?ISO-8859-2?Q?Pawe=B3_Matejski?= - 10-03-2007 00:04

  Jaroslaw Zabiello wrote:
> Poprawka do podanego przeze mnie przykładu Rubiego. Podobnie jak Python,
> posiada kilka poziomow ostrzeżeń. Aby wyłapywać błedy z kodu:
>
> zmienna_bez_literowki = 'OK'
> if rand(10) > 5
> puts zmienna_bez_literowki
> else
> puts zmienna_z_literowka
> end
>
> Trzeba uruchamiac skrypty na poziomie wyższym od 1, np. 2:
>
> ruby -W2 test.rb
> test.rb:5: undefined local variable or method `zmienna_z_literowka' for
> main:Object (NameError)

To nie pokazuje rozwiązania dla literówki po lewej stronie =.

--
P.M.




Jaroslaw Zabiello - 10-03-2007 00:04

  Dnia Fri, 09 Mar 2007 15:43:49 +0100, Paweł Matejski napisał(a):

> To nie pokazuje rozwiązania dla literówki po lewej stronie =.

Nie rozumiem. Przecież w jęz. dynamicznych coś takiego

$cokolwiek = 'blah';

nie nazywa się literówką, ale zwykłym stworzeniem zmiennej z przypisaniem
jej wartości. No chyba że chodzi ci warningi switcha -W w Perlu (np. że
masz zmienną która nie jest później używana). Python to zrobi bez problemu
za pomocą pylint.

--
Jarosław Zabiełło
http://blog.zabiello.com




Jaroslaw Zabiello - 10-03-2007 00:04

  Dnia Fri, 09 Mar 2007 15:41:43 +0100, Paweł Matejski napisał(a):

>> fooh = bla_bla(foon)
>> NameError: name 'bla_bla' is not defined
>>
>> ruby -w test.rb
>> test.rb:2: undefined method `bla_bla' for main:Object (NoMethodError)
>
> No, ale tu nie chodzi o błąd w nazwie funkcji, tylko o literówkę w zmiennej po
> lewej stronie =. !

Przecież to nie jest żaden błąd tylko normalne stworzenie zmiennej. Niby co
ma być kryterium że to literówka? Np. to że zmienna jest używana tylko raz?

--
Jarosław Zabiełło
http://blog.zabiello.com





Stachu 'Dozzie' K. - 10-03-2007 00:04

  On 09.03.2007, Jaroslaw Zabiello <hipertracker@gmail.com> wrote:
> Dnia Fri, 09 Mar 2007 15:43:49 +0100, Paweł Matejski napisał(a):
>
>> To nie pokazuje rozwiązania dla literówki po lewej stronie =.
>
> Nie rozumiem. Przecież w jęz. dynamicznych coś takiego
>
> $cokolwiek = 'blah';
>
> nie nazywa się literówką, ale zwykłym stworzeniem zmiennej z przypisaniem
> jej wartości. No chyba że chodzi ci warningi switcha -W w Perlu (np. że
> masz zmienną która nie jest później używana). Python to zrobi bez problemu
> za pomocą pylint.

Hint: use strict;

--
Secunia non olet.
Stanislaw Klekot




Twelve Hungry Mammoths - 10-03-2007 00:04

  On Fri, 09 Mar 2007 15:57:42 +0100, Jaroslaw Zabiello
<hipertracker@gmail.com> wrote:
>
> Przecież to nie jest żaden błąd tylko normalne stworzenie zmiennej. Niby
> co
> ma być kryterium że to literówka? Np. to że zmienna jest używana tylko
> raz?

tak wlasnie dziala Perl

pzdr
szeryf




Szymon =?iso-8859-2?Q?Sok=F3=B3?= - 10-03-2007 00:04

  On Fri, 9 Mar 2007 14:57:42 +0000, Jaroslaw Zabiello wrote:

> Przecież to nie jest żaden błąd tylko normalne stworzenie zmiennej. Niby co
> ma być kryterium że to literówka? Np. to że zmienna jest używana tylko raz?

Niby użycie *niezadeklarowanej* zmiennej ma być kryterium. Bo bardzo łatwo
użyć raz nazwy różniącej się tylko jedną literką od tej właściwej, ale
znacznie trudniej obie wersje omyłkowo zadeklarować...
--
Szymon Sokół (SS316-RIPE) -- Network Manager B
Computer Center, AGH - University of Science and Technology, Cracow, Poland O
http://home.agh.edu.pl/szymon/ PGP key id: RSA: 0x2ABE016B, DSS: 0xF9289982 F
Free speech includes the right not to listen, if not interested -- Heinlein H




hubert depesz lubaczewski - 10-03-2007 00:04

  On 2007-03-09, Jaroslaw Zabiello <hipertracker@gmail.com> wrote:
> Przecież to nie jest żaden błąd tylko normalne stworzenie zmiennej. Niby co
> ma być kryterium że to literówka? Np. to że zmienna jest używana tylko raz?

nie została zadeklarowana.

przykład:
=> cat x.pl
#!/usr/bin/perl
use strict;
my $zmienna = 90;
$zmiena = sin($zmienna);

=> perl x.pl
Global symbol "$zmiena" requires explicit package name at x.pl line 4.
Execution of x.pl aborted due to compilation errors.

depesz

--
quicksil1er: "postgres is excellent, but like any DB it requires a
highly paid DBA. here's my CV!" :)
http://www.depesz.com/ - blog dla ciebie (i moje CV)




adam.twentus@gmail.com - 10-03-2007 00:04

  > Trzeba uruchamiac skrypty na poziomie wyższym od 1, np. 2:
>
> ruby -W2 test.rb
> test.rb:5: undefined local variable or method `zmienna_z_literowka' for
> main:Object (NameError)

Jarku, pudło, to nadal nie jest to co w perlu (Depesz podał ^c/^v
przykład).

A teraz - uwaga, działający, nie abstrakcyjny, copy&paste przykład dla
rubiego:

foob = 12
fooh = Integer(foob)
print "foob\n"

u@host> ruby -W2 no_chance_to_see_mistake.rb
foob

I faktycznie - wszystko ok, bo przecież było przypisanie. Brrr....

Tekst o widoczności klas/metod ok, a zmienna $SAFE (globalna, rzecz
jasna ;) to jakże praktyczne rozwinięcie -T w perlu ;)

Jak będzie się dało wymusić deklarowanie zmiennych w ruby, to może
stanę się ewangelizatorem tego języka, chyba że pythonowcy będą
pierwsi :)

--
adam




Stachu 'Dozzie' K. - 11-03-2007 00:56

  On 08.03.2007, Twelve Hungry Mammoths <someone@microsoft.com> wrote:
> On Wed, 07 Mar 2007 22:49:18 +0100, Stachu 'Dozzie' K.
><dozzie@dynamit.im.pwr.wroc.pl.nospam> wrote:
>>>
>>>> Eclipse ma zbyt biedny
>>>> edytor
>>>
>>> coz, vim jest niedoscigalny z definicji i kazdy inny edytor jest w
>>> porownaniu z nim biedny.
>>
>> Zapominasz o Emacsie.
>
> nie zapominam. tylko nie chcialem rozpetywac w tym watku dodatkowo swietej
> wojny vim vs emacs.

W moim przypadku nie masz się o co bać. Za dobrze znam Emacsa żeby go
nie doceniać (choć nie umiem go używać nawet w jednej ósmej tak sprawnie
jak Vima).

>>>> a z pozostałych (z wyjątkiem Sun Studio) żadne nie poradzi sobie
>>>> z podświetlaniem składni czterech używanych przeze mnie języków.
>>>
>>> LOL. mam w pracy taki prosciutki edytorek Context, ktory ma
>>> podswietlanie
>>> kilkudziesieciu jezykow. EditPlus tez ma gdzies tyle. UltraEdit
>>> podobnie.
>>> SciTE tudziez. jakiez to czery jezyki, jezeli mozna wiedziec?
>>
>> A które *środowisko* sobie poradzi z tyloma językami? Bo ConTEXT i SciTE
>> to tylko edytory.
>
> no edytory. chodzilo mi o to, ze skoro kazdy srednio wypasiony edytor (nie
> wspominajac juz o porzadnych IDE) radzi sobie z kilkudziesiecioma
> jezykami, to ciekawosc bierze, co to za jezyki, z ktorymi zadne IDE sobie
> nie radzi.

Pokaż mi _IDE_, które koloruje składnię shella, Perla, Tcla,
C i lex/yacc. Samodzielne edytory radzą sobie nieźle, IDE już znacznie
gorzej.

>> Mówimy o używaniu IDE i używaniu środowiska sklejanego z wielu narzędzi.
>> I o tym, że ty sobie nie wyobrażasz używania cmdline'owych narzędzi,
>> podczas gdy dla mnie to wygodna codzienność. I że ja nie wyobrażam sobie
>> rezygnacji z potężnego edytora, co z kolei jest codziennością dla
>> ciebie.
>
> nie, ja pisalem o konkretnym zastosowaniu konkretnego ficzera, dokladnie
> wbudowanego klienta systemu kontroli wersji w sytuacji, gdy chcemy np.
> przejrzec zmiany przychodzace w kilkudziesieciu plikach zrodlowych, a w
> dodatku w kilku mamy konflikty. w eclipse aby obejrzec zmiany
> zwizualizowane w calkiem fajny sposob, wystarczy dwuklik na pliku na
> liscie. konflikty rozwiazuje sie podobnie, klikajac na strzalke w lewo lub
> w prawo w zaleznosci od tego, co uznajemy za lepsze. czy z linii polecen
> jest to rownie proste?

Tak. Raz, że często wolę czytać unidiffy, dwa, że svn (klient) zostawia
cztery pliki: dwie rewizje, plik z próbą sklejenia i zaznaczonymi
konfliktami, oryginalny plik z working copy. I mogę sobie spokojnie
porównać vimdiffem co trzeba.

>>>>>> A może edytor, który nie potrafi nawet zwijać kodu w takich
>>>>>> granicach, jakich potrzebuję,
>>>>>
>>>>> tzn. w jakich?
>>>>
>>>> Kolejne cztery bloki if. Od połowy poprzedniej funkcji prawie do końca
>>>> funkcji bieżącej.
>>>
>>> LOL. to, ze vim umozliwia (przypadkiem) tego typu kombinacje alpejskie,
>>> nie oznacza, ze komus jest to niezbedne do pracy (-:
>>
>> Owszem, jest niezbędne. Zdarza mi się przy pisaniu jednej funkcji
>> spojrzeć do deklaracji zmiennych w drugiej funkcji.
>
> podczas gdy Ty wklepujesz w vimie kombinacje przypominajaca przeklinanie w
> komiksach, reszta ludzkosci wykonuje dwa ruchy kolkiem mysze w gore i w
> dol (-:

Podczas gdy reszta ludzkości przewija okno w tę i z powrotem wkurwiając
się na konieczność odrywania palców od klawiatury i szukania kursora
(uda ci się chwycić myszkę tak żeby nie poruszyć kursorem?), ja już
dawno zwinąłem niepotrzebny kod i oglądam deklaracje.

>>>>>> w zamian oferując zwijanie pojedynczych
>>>>>> bloków {}, do czego _niezbędna_ jest myszka?
>>>>>
>>>>> eclipse potrafi wiecej.
>>>>
>>>> To znaczy co konkretnie potrafi?
>>>
>>> jak juz pisalem, na codzien nie korzystam, ale potrafi zwijac sekcje
>>> importow, komentarze javadoc i kazdy element hierarchii kodu
>>> (klasa/metoda/blok).
>>
>> To w takim razie malutko.
>
> widac wiekszosci ludzkosci to wystarcza (-:

Widać większość ludzi nie widziała porządnego zwijania kodu. Co ciekawe,
zaskakująco często spotykam się w dyskusjach o edytorach i IDE
z zarzutami wobec Vima, że nie potrafi zwijać kodu w ogóle. Zarzuty te
wysuwają gorący zwolennicy Eclipse.

>>>>> znow Cie ponioslo. kolega nie napisal, ze Perl nie nadaje sie do
>>>>> uzytku,
>>>>> tylko ze moze sie spoznic na swoje 5 minut. na swoje tzw. okno
>>>>> marketingowe.
>>>>
>>>> A czy ja z tym dyskutuję? Ja wytykam głupi dobór braków.
>>>
>>> niemniej jednak sa to braki. o tym wlasnie mial byc ten watek.
>>
>> Java też ma braki. Nawet podobne do perlowych, ale wymieniłem je
>> w większej obfitości. Znaczy: mój pseudoargument jest sensowny?
>
> ten ponizej (pod koniec)? jasne. sensowny w sensie falsyfikowalny. to jest
> taki, z ktorym mozna polemizowac. nawet bym popolemizowal, ale rozumiem,
> ze to byl tylko przyklad, a nie Twoje zdanie.

Ależ skąd, polemizować się nie da. Argument jest bzdurą, bo wykazuje
się w nim, że Java (Perl) nie jest idealna we _wszystkim_, co można
wymyślić.

>>>> W każdym języku
>>>> znajdzie się coś, co jest fajne, a w Perlu nie ma. Czy to znaczy, że
>>>> Perl jest do dziadzi?
>>>
>>> nie, to znaczy, ze Perl ma braki.
>>
>> Każdy język ma braki.
>
> nikt nie twierdzil inaczej. ale to nie bylo raczej przedmiotem tamtego
> artykulu.

Moim zdaniem przedmiotem artykułu było wykazanie, że Perl nadaje się na
śmietnik, bo nie dorównuje nieistniejącemu językowi.

>>> bo takie porownanie nie zmiesciloby sie w jednym akapicie, a autorowi
>>> chodzilo po prostu o wskazanie kilku wad Perla.
>>
>> To w takim razie jest porównanie wysoce nieuczciwe.
>
> nie widze w tym nic nieuczciwego. napisal, co uwazal i juz. problem
> czytajacych, co z tym zrobia. nieuczciwe byloby, gdyby myslal jedno, a
> pisal cos innego (-:

--
Secunia non olet.
Stanislaw Klekot




Twelve Hungry Mammoths - 12-03-2007 00:02

  On Sun, 11 Mar 2007 01:42:59 +0100, Stachu 'Dozzie' K.
<dozzie@dynamit.im.pwr.wroc.pl.nospam> wrote:
>
> Pokaż mi _IDE_, które koloruje składnię shella, Perla, Tcla,
> C i lex/yacc. Samodzielne edytory radzą sobie nieźle, IDE już znacznie
> gorzej.

eclipse z kilkoma pluginami. musialem chwile pogooglac, bo na codzien nie
uzywam, no ale niech bedzie:

ShellEd:
http://www.eclipseplugincentral.com/...k-cid-275.html
EPIC (dla Perla):
http://www.eclipseplugincentral.com/...k-cid-102.html
dla Tcla: http://wiki.tcl.tk/17262

do C i C++ jest kilkanascie pluginow, nie bede wymienial. do lex/yacc (ani
flex/bison) nie znalazlem nic specjalnego, oprocz EclipseColorer, ktory ma
podswietlanie ich skladni wsrod 150 innych.

pluginy sa na roznym etapie rozwoju, od "tylko" podswietlania skladni (to
daja praktycznie wszystkie) do podpowiadania skladni i debuggera.
oczywiscie, im szersze community, tym bardziej wypasione pluginy, wiec
najlepsze sa do C/C++ (-:

aha, i nie oczekuj, ze jakiekolwiek IDE da Ci z pudelka zestaw do
developingu dowolnie zakreconej kombinacji jezykow i narzedzi. po to sa
pluginy, zeby samo IDE moglo byc lzejsze i mniejsze. no i nie ma sensu,
zeby 100% uzytkownikow danego IDE trzymalo w pamieci i na dysku kod, z
ktorego korzysta 1%.

>> nie, ja pisalem o konkretnym zastosowaniu konkretnego ficzera, dokladnie
>> wbudowanego klienta systemu kontroli wersji w sytuacji, gdy chcemy np.
>> przejrzec zmiany przychodzace w kilkudziesieciu plikach zrodlowych, a w
>> dodatku w kilku mamy konflikty. w eclipse aby obejrzec zmiany
>> zwizualizowane w calkiem fajny sposob, wystarczy dwuklik na pliku na
>> liscie. konflikty rozwiazuje sie podobnie, klikajac na strzalke w lewo
>> lub
>> w prawo w zaleznosci od tego, co uznajemy za lepsze. czy z linii polecen
>> jest to rownie proste?
>
> Tak. Raz, że często wolę czytać unidiffy, dwa, że svn (klient) zostawia
> cztery pliki: dwie rewizje, plik z próbą sklejenia i zaznaczonymi
> konfliktami, oryginalny plik z working copy. I mogę sobie spokojnie
> porównać vimdiffem co trzeba.

razy powiedzmy 20 plikow? coz, jest to pewien rodzaj bohaterstwa (-: ale
ja wole poklikac jak lamer (-:

> Podczas gdy reszta ludzkości przewija okno w tę i z powrotem wkurwiając
> się na konieczność odrywania palców od klawiatury

nie kazdy programista spedza 100% tlukac w klawiature (-:

> i szukania kursora
> (uda ci się chwycić myszkę tak żeby nie poruszyć kursorem?),

za kazdym razem

> ja już
> dawno zwinąłem niepotrzebny kod i oglądam deklaracje.

srednio wypasione IDE podpowiada Ci mozliwe operacje na danym obiekcie,
deklaracje tego obiektu, pokazuje javadoca, podswietla wystapienia,
pozwala skoczyc do deklaracji i z powrotem, itd. itp., wiec moze dlatego
uzytkownicy IDE nie czuja takiej potrzeby zwijania kodu.

>>>> jak juz pisalem, na codzien nie korzystam, ale potrafi zwijac sekcje
>>>> importow, komentarze javadoc i kazdy element hierarchii kodu
>>>> (klasa/metoda/blok).
>>>
>>> To w takim razie malutko.
>>
>> widac wiekszosci ludzkosci to wystarcza (-:
>
> Widać większość ludzi nie widziała porządnego zwijania kodu.

mozliwe. a moze po prostu nie jest to takie niezbedne.

> Co ciekawe,
> zaskakująco często spotykam się w dyskusjach o edytorach i IDE
> z zarzutami wobec Vima, że nie potrafi zwijać kodu w ogóle. Zarzuty te
> wysuwają gorący zwolennicy Eclipse.

a to juz nie moje cup of tea. dla mnie zwijanie kodu mogloby nie istniec.

> Ależ skąd, polemizować się nie da.

da sie, bo wiekszosc porownan byla nieprawdziwa, lub co najmniej
dyskusyjna.

> Argument jest bzdurą, bo wykazuje
> się w nim, że Java (Perl) nie jest idealna we _wszystkim_, co można
> wymyślić.

wprost przeciwnie, jest bardzo cenny, bo zawiera liste (prawdziwych lub
wyimaginowanych) wad Javy (Perla). gdybym byl w sytuacji, ze szukam jezyka
do wykonania jakiegos zadania, chcialbym poznac jego wady. czy beda one
rzeczywiste czy rzekome, to juz inna sprawa, ktora moge sobie sam
zweryfikowac, korzystajac z kryteriow, o ktorych pisalem wczesniej oraz
ewentualnie innych opinii. czasem moze byc nawet tak, ze rzeczywista wada
(np. problemy z wielowatkowoscia w Perlu) moze byc pomijalna, jezeli
zakladam, ze dane zadanie (wyciagniecie informacji z pliku tekstowego) nie
bedzie wymagalo korzystania z tego obszaru.

> Moim zdaniem przedmiotem artykułu było wykazanie, że Perl nadaje się na
> śmietnik, bo nie dorównuje nieistniejącemu językowi.

ja nie odnioslem takiego wrazenia, ale nawet jezeli tak bylo, to autor
mial pelne prawo tak napisac (prawo zwane wolnoscia wypowiedzi). a Ty
oczywiscie mozesz sie z nim nie zgadzac, polemizowac itp.

pzdr
szeryf




Stachu 'Dozzie' K. - 12-03-2007 00:02

  On 11.03.2007, Twelve Hungry Mammoths <someone@microsoft.com> wrote:
> On Sun, 11 Mar 2007 01:42:59 +0100, Stachu 'Dozzie' K.
><dozzie@dynamit.im.pwr.wroc.pl.nospam> wrote:
>>
>> Pokaż mi _IDE_, które koloruje składnię shella, Perla, Tcla,
>> C i lex/yacc. Samodzielne edytory radzą sobie nieźle, IDE już znacznie
>> gorzej.
>
> eclipse z kilkoma pluginami. musialem chwile pogooglac, bo na codzien nie
> uzywam,

No dobra, ale Eclipse ze wzlgędu na ciężar i biedny edytorek przy
dostarczaniu praktycznie niczego (bo i co daje lepszego do shella czy
samego Perla?) odpadło w przedbiegach.

> aha, i nie oczekuj, ze jakiekolwiek IDE da Ci z pudelka zestaw do
> developingu dowolnie zakreconej kombinacji jezykow i narzedzi. po to sa
> pluginy, zeby samo IDE moglo byc lzejsze i mniejsze. no i nie ma sensu,
> zeby 100% uzytkownikow danego IDE trzymalo w pamieci i na dysku kod, z
> ktorego korzysta 1%.

Ależ ja nie oczekuję od IDE bycia OOTB dopasowanym do moich potrzeb.
Problem w tym, że chyba jedynie w Eclipse można dopasować zestaw
języków, ale poza tym Eclipse nie daje żadnego ułatwienia w pracy,
a przy tym jednocześnie jest pewnym utrudnieniem (słabiutki edytorek,
ciężar środowiska). Nawet nie wspominam, że zdarza mi się pracować nad
softem przez łącza rzędu ADSL 600kbps, bo żadne IDE nie było do tego
przystosowane.

>>> nie, ja pisalem o konkretnym zastosowaniu konkretnego ficzera, dokladnie
>>> wbudowanego klienta systemu kontroli wersji w sytuacji, gdy chcemy np.
>>> przejrzec zmiany przychodzace w kilkudziesieciu plikach zrodlowych, a w
>>> dodatku w kilku mamy konflikty. w eclipse aby obejrzec zmiany
>>> zwizualizowane w calkiem fajny sposob, wystarczy dwuklik na pliku na
>>> liscie. konflikty rozwiazuje sie podobnie, klikajac na strzalke w lewo
>>> lub
>>> w prawo w zaleznosci od tego, co uznajemy za lepsze. czy z linii polecen
>>> jest to rownie proste?
>>
>> Tak. Raz, że często wolę czytać unidiffy, dwa, że svn (klient) zostawia
>> cztery pliki: dwie rewizje, plik z próbą sklejenia i zaznaczonymi
>> konfliktami, oryginalny plik z working copy. I mogę sobie spokojnie
>> porównać vimdiffem co trzeba.
>
> razy powiedzmy 20 plikow?

Od tego mam shella, żeby załatwił mi automatyzację. Eclipse, zdaje się,
nie umie tak?

> coz, jest to pewien rodzaj bohaterstwa (-: ale
> ja wole poklikac jak lamer (-:
>
>> Podczas gdy reszta ludzkości przewija okno w tę i z powrotem wkurwiając
>> się na konieczność odrywania palców od klawiatury
>
> nie kazdy programista spedza 100% tlukac w klawiature (-:

Nie każdy programista lubi używać myszki, zwłaszcza gdy w tym samym
czasie pracuje na czterech zdalnych shellach.

>> i szukania kursora
>> (uda ci się chwycić myszkę tak żeby nie poruszyć kursorem?),
>
> za kazdym razem

To gratuluję.

>> ja już
>> dawno zwinąłem niepotrzebny kod i oglądam deklaracje.
>
> srednio wypasione IDE podpowiada Ci mozliwe operacje na danym obiekcie,
> deklaracje tego obiektu, pokazuje javadoca, podswietla wystapienia,
> pozwala skoczyc do deklaracji i z powrotem, itd. itp.,

A co to ma do tworzenia/zmieniania analogicznego kodu? IDE mi podpowie,
co to jest? IDE poradzi sobie z podpowiedzeniem metod obiektu w Perlu
albo Pythonie, gdzie przed uruchomieniem nie ma możliwości poznać typu
obiektu? O ile dobrze pamiętam, nawet IDE dedykowane Pythonowi mają
z tym problem.

> wiec moze dlatego
> uzytkownicy IDE nie czuja takiej potrzeby zwijania kodu.
>
>>>>> jak juz pisalem, na codzien nie korzystam, ale potrafi zwijac sekcje
>>>>> importow, komentarze javadoc i kazdy element hierarchii kodu
>>>>> (klasa/metoda/blok).
>>>>
>>>> To w takim razie malutko.
>>>
>>> widac wiekszosci ludzkosci to wystarcza (-:
>>
>> Widać większość ludzi nie widziała porządnego zwijania kodu.
>
> mozliwe. a moze po prostu nie jest to takie niezbedne.

Podobnie mówiłem o systemach kontroli wersji i o systemach budowania.
Dopóki nie zacząłem używać.

>> Ależ skąd, polemizować się nie da.
>
> da sie, bo wiekszosc porownan byla nieprawdziwa, lub co najmniej
> dyskusyjna.

Niby które?

>> Moim zdaniem przedmiotem artykułu było wykazanie, że Perl nadaje się na
>> śmietnik, bo nie dorównuje nieistniejącemu językowi.
>
> ja nie odnioslem takiego wrazenia, ale nawet jezeli tak bylo, to autor
> mial pelne prawo tak napisac (prawo zwane wolnoscia wypowiedzi). a Ty
> oczywiscie mozesz sie z nim nie zgadzac, polemizowac itp.

Wiesz, prawo wolności wypowiedzi gwarantuje każdemu prawo do
wypowiedzenia dowolnych bredni, dopóki nie dotykają dóbr osobistych
innej osoby (np. zniesławienie).

--
Secunia non olet.
Stanislaw Klekot




Twelve Hungry Mammoths - 12-03-2007 00:02

  On Sun, 11 Mar 2007 11:43:51 +0100, Stachu 'Dozzie' K.
<dozzie@dynamit.im.pwr.wroc.pl.nospam> wrote:
>>>
>>> Pokaż mi _IDE_, które koloruje składnię shella, Perla, Tcla,
>>> C i lex/yacc. Samodzielne edytory radzą sobie nieźle, IDE już znacznie
>>> gorzej.
>>
>> eclipse z kilkoma pluginami. musialem chwile pogooglac, bo na codzien
>> nie
>> uzywam,
>
> No dobra,

czyli jednak (-:

> ale Eclipse ze wzlgędu na ciężar i biedny edytorek przy
> dostarczaniu praktycznie niczego (bo i co daje lepszego do shella czy
> samego Perla?) odpadło w przedbiegach.

Eclipse powstalo jako IDE do Javy, ktora jest jezykiem wrecz uzaleznionym
od IDE i w Javie bez IDE w zasadzie ani rusz. moze rzeczywiscie to jezyk
determinuje, czy IDE jest niezbedne, czy mozna sie bez niego obejsc?

> Ależ ja nie oczekuję od IDE bycia OOTB dopasowanym do moich potrzeb.
> Problem w tym, że chyba jedynie w Eclipse można dopasować zestaw
> języków, ale poza tym Eclipse nie daje żadnego ułatwienia w pracy,

w Javie daje bardzo duze

> a przy tym jednocześnie jest pewnym utrudnieniem (słabiutki edytorek,

ales sie przyczepil do tego edytora. IMHO nie jest taki slabiutki. wiem,
bo pracowalem przez ok. rok w Javie przy uzyciu vima. i jakos nie tesknie
za nim.

wiekszosc programistow (w sensie osob na codzien zajmujacych sie klepaniem
kodu) nie korzysta z vima i jakos sobie radzi. i to nie zawsze nie
korzysta dlatego, ze nie zna. problem z vimem jest taki, ze wymaga bardzo
duzo nauki i treningu, zeby sie nim sprawnie poslugiwac. wiekszosc po
prostu nie chce albo nie moze na to poswiecic tyle czasu. korzysci, ktore
wymieniles, tez jakos niespecjalnie przemawiaja do wyobrazni.

>>>> nie, ja pisalem o konkretnym zastosowaniu konkretnego ficzera,
>>>> dokladnie
>>>> wbudowanego klienta systemu kontroli wersji w sytuacji, gdy chcemy np.
>>>> przejrzec zmiany przychodzace w kilkudziesieciu plikach zrodlowych, a
>>>> w
>>>> dodatku w kilku mamy konflikty. w eclipse aby obejrzec zmiany
>>>> zwizualizowane w calkiem fajny sposob, wystarczy dwuklik na pliku na
>>>> liscie. konflikty rozwiazuje sie podobnie, klikajac na strzalke w lewo
>>>> lub
>>>> w prawo w zaleznosci od tego, co uznajemy za lepsze. czy z linii
>>>> polecen
>>>> jest to rownie proste?
>>>
>>> Tak. Raz, że często wolę czytać unidiffy, dwa, że svn (klient) zostawia
>>> cztery pliki: dwie rewizje, plik z próbą sklejenia i zaznaczonymi
>>> konfliktami, oryginalny plik z working copy. I mogę sobie spokojnie
>>> porównać vimdiffem co trzeba.
>>
>> razy powiedzmy 20 plikow?
>
> Od tego mam shella, żeby załatwił mi automatyzację. Eclipse, zdaje się,
> nie umie tak?

ale co ma umiec? tu nie ma co automatyzowac. kazdy konflikt jest inny. nad
kazdym trzeba pomyslec i podjac jakas decyzje. wziac jedna z wersji albo
je jakos polaczyc. co bys chcial automatyzowac?

> Nie każdy programista lubi używać myszki, zwłaszcza gdy w tym samym
> czasie pracuje na czterech zdalnych shellach.

mam wrazenie, ze strasznie demonizujesz myszke. to naprawde przyjazne
narzedzie. i wyobraz sobie, ze sa programisci, ktorzy wogole nie uzywaja
"zdalnych shelli".

>> srednio wypasione IDE podpowiada Ci mozliwe operacje na danym obiekcie,
>> deklaracje tego obiektu, pokazuje javadoca, podswietla wystapienia,
>> pozwala skoczyc do deklaracji i z powrotem, itd. itp.,
>
> A co to ma do tworzenia/zmieniania analogicznego kodu? IDE mi podpowie,
> co to jest?

ke? co to jest analogiczny kod?

> IDE poradzi sobie z podpowiedzeniem metod obiektu w Perlu
> albo Pythonie, gdzie przed uruchomieniem nie ma możliwości poznać typu
> obiektu?

rownie dobrze/zle, jak vim. ale co z tego?

>> wiec moze dlatego
>> uzytkownicy IDE nie czuja takiej potrzeby zwijania kodu.
>>
>>>>>> jak juz pisalem, na codzien nie korzystam, ale potrafi zwijac sekcje
>>>>>> importow, komentarze javadoc i kazdy element hierarchii kodu
>>>>>> (klasa/metoda/blok).
>>>>>
>>>>> To w takim razie malutko.
>>>>
>>>> widac wiekszosci ludzkosci to wystarcza (-:
>>>
>>> Widać większość ludzi nie widziała porządnego zwijania kodu.
>>
>> mozliwe. a moze po prostu nie jest to takie niezbedne.
>
> Podobnie mówiłem o systemach kontroli wersji i o systemach budowania.
> Dopóki nie zacząłem używać.

roznica jest taka, ze system kontroli wersji czy automatyzacja budowania
to abecadlo profesjonalisty. bez nich nie da sie zbudowac czegokolwiek
wiekszego niz kilka tysiecy linii kodu, ani nie da sie pracowac zespolowo.
bez zwijania kodu - jak najbardziej.

>>> Ależ skąd, polemizować się nie da.
>>
>> da sie, bo wiekszosc porownan byla nieprawdziwa, lub co najmniej
>> dyskusyjna.
>
> Niby które?

LOL, naprawde chcesz bronic swoich zartow? ja myslalem, ze tylko
zartowales... no, ale dobra:

> Czy Java ma równie bogatą bibliotekę z klasami co CPAN?

jak nie bogatsza. choc przydaloby sie jakies scentralizowane repozytorium.
bez tego trudno porownac.

> Czy narzuca
> czytelne formatowanie jak Haskell czy Python?

narzucanie formatowania budzi tyle kontrowersji, ze trudno jego brak uznac
za wade.

> Czy równie łatwo jest
> osadzić JSP w Apache'u co PHP?

nie wiem, czy rownie. w kazdym badz razie latwo, skoro ja potrafie.

> Czy pozwala na takie manipulacje
> systemem jak C?

to kwestia bibliotek, C samo w sobie nie daje takich mozliwosci (chyba, ze
mowimy o MS-DOSie i wykorzystaniu wskaznikow).

> Czy gwarantuje niszczenie obiektów as-fast-as-possible,
> jak w C++?

w pewnym sensie daje to konstrukcja try/finally, uzywana do zamykania
obiektow, ktore rzeczywiscie powinny zostac zamkniete w miare
przewidywalnym momencie (strumienie, pliki, polaczenia sieciowe).

> Czy ma wbudowane w _język_ (nie w bibliotekę) wsparcie dla
> wątków, tak jak ma Ada?

wbudowanie watkow w jezyk stanowi slepa uliczke ewolucji jezykow. zaden
jezyk po Adzie w nia nie wdepnal[*]

> Nie? No proszę, do dupy ten język.

do dupy sa argumenty i wyciagniety z nich wniosek, ale masz pelne prawo
tak uwazac. zreszta sam uwazam, ze Java jest do dupy, ale z innych
przyczyn (-:

> Wiesz, prawo wolności wypowiedzi gwarantuje każdemu prawo do
> wypowiedzenia dowolnych bredni, dopóki nie dotykają dóbr osobistych
> innej osoby (np. zniesławienie).

LOL. Perl to nie prezydent Kaczynski, nie przysluguje mu ochrona dobrego
imienia z urzedu. nie sadze tez, zeby Ci sie udalo wykazac przed sadem, ze
tamten artykul godzil w dobra osobiste Larry'ego Walla, czy Twoje, czy
czyjekolwiek.

pzdr
szeryf
[*] oczywiscie zartuje, nie znam sie na tym. ale argument dobry jak kazdy
inny w tej dyskusji (-:




Stachu 'Dozzie' K. - 12-03-2007 00:02

  On 11.03.2007, Twelve Hungry Mammoths <someone@microsoft.com> wrote:
> On Sun, 11 Mar 2007 11:43:51 +0100, Stachu 'Dozzie' K.
><dozzie@dynamit.im.pwr.wroc.pl.nospam> wrote:
>>>>
>>>> Pokaż mi _IDE_, które koloruje składnię shella, Perla, Tcla,
>>>> C i lex/yacc. Samodzielne edytory radzą sobie nieźle, IDE już znacznie
>>>> gorzej.
>>>
>>> eclipse z kilkoma pluginami. musialem chwile pogooglac, bo na codzien
>>> nie
>>> uzywam,
>>
>> No dobra,
>
> czyli jednak (-:
>
>> ale Eclipse ze wzlgędu na ciężar i biedny edytorek przy
>> dostarczaniu praktycznie niczego (bo i co daje lepszego do shella czy
>> samego Perla?) odpadło w przedbiegach.
>
> Eclipse powstalo jako IDE do Javy, ktora jest jezykiem wrecz uzaleznionym
> od IDE i w Javie bez IDE w zasadzie ani rusz. moze rzeczywiscie to jezyk
> determinuje, czy IDE jest niezbedne, czy mozna sie bez niego obejsc?

Może. A co w takim razie z C, C++ i Adą? Potrzebują czy nie potrzebują
IDE?

>> Ależ ja nie oczekuję od IDE bycia OOTB dopasowanym do moich potrzeb.
>> Problem w tym, że chyba jedynie w Eclipse można dopasować zestaw
>> języków, ale poza tym Eclipse nie daje żadnego ułatwienia w pracy,
>
> w Javie daje bardzo duze

No to powiedz, jakie. Poza podpowiadaniem metod, za którym zresztą nie
przepadam i integracją z Subversion, od której wolę wierszopoleceniowego
klienta.

>> a przy tym jednocześnie jest pewnym utrudnieniem (słabiutki edytorek,
>
> ales sie przyczepil do tego edytora. IMHO nie jest taki slabiutki. wiem,
> bo pracowalem przez ok. rok w Javie przy uzyciu vima. i jakos nie tesknie
> za nim.

A ja bym tęsknił (pisałem w Vimie w Javie). Może kwestia specyfiki
pisanego softu? Mnie często przydawało się zwijanie kodu, edycja
blokowa (tryb VISUAL BLOCK) i skakanie po mnóstwie plików bez
przenoszenia ręki na myszkę.

> wiekszosc programistow (w sensie osob na codzien zajmujacych sie klepaniem
> kodu) nie korzysta z vima i jakos sobie radzi. i to nie zawsze nie
> korzysta dlatego, ze nie zna. problem z vimem jest taki, ze wymaga bardzo
> duzo nauki i treningu, zeby sie nim sprawnie poslugiwac.

Tu się zgadzam. Ale moim zdaniem edytor to na tyle często używany
program, że warto poświęcić chwilę na jego poznanie.

> wiekszosc po
> prostu nie chce albo nie moze na to poswiecic tyle czasu. korzysci, ktore
> wymieniles, tez jakos niespecjalnie przemawiaja do wyobrazni.

Korzyści wynikające z korzystania z systemu kontroli wersji (albo nawet
trzech różnych) też często nie przemawiają do wyobraźni. Albo debugger,
przez dobre dwa lata uważałem, że to może i przydatny, ale mało
potrzebny dodatek. Poużywałem trochę gdb i nagle się okazało, że
potrafię znaleźć błędy czasem nawet kilkunastokrotnie szybciej.

>>>>> nie, ja pisalem o konkretnym zastosowaniu konkretnego ficzera,
>>>>> dokladnie
>>>>> wbudowanego klienta systemu kontroli wersji w sytuacji, gdy chcemy np.
>>>>> przejrzec zmiany przychodzace w kilkudziesieciu plikach zrodlowych, a
>>>>> w
>>>>> dodatku w kilku mamy konflikty. w eclipse aby obejrzec zmiany
>>>>> zwizualizowane w calkiem fajny sposob, wystarczy dwuklik na pliku na
>>>>> liscie. konflikty rozwiazuje sie podobnie, klikajac na strzalke w lewo
>>>>> lub
>>>>> w prawo w zaleznosci od tego, co uznajemy za lepsze. czy z linii
>>>>> polecen
>>>>> jest to rownie proste?
>>>>
>>>> Tak. Raz, że często wolę czytać unidiffy, dwa, że svn (klient) zostawia
>>>> cztery pliki: dwie rewizje, plik z próbą sklejenia i zaznaczonymi
>>>> konfliktami, oryginalny plik z working copy. I mogę sobie spokojnie
>>>> porównać vimdiffem co trzeba.
>>>
>>> razy powiedzmy 20 plikow?
>>
>> Od tego mam shella, żeby załatwił mi automatyzację. Eclipse, zdaje się,
>> nie umie tak?
>
> ale co ma umiec? tu nie ma co automatyzowac.

Jest. Wywoływanie vimdiffa na konfliktach.

> kazdy konflikt jest inny. nad
> kazdym trzeba pomyslec i podjac jakas decyzje. wziac jedna z wersji albo
> je jakos polaczyc. co bys chcial automatyzowac?
>
>> Nie każdy programista lubi używać myszki, zwłaszcza gdy w tym samym
>> czasie pracuje na czterech zdalnych shellach.
>
> mam wrazenie, ze strasznie demonizujesz myszke. to naprawde przyjazne
> narzedzie. i wyobraz sobie, ze sa programisci, ktorzy wogole nie uzywaja
> "zdalnych shelli".

Wyobrażam sobie. Co więcej, zdaję sobie sprawę z tego, że jestem dośc
specyficznym przypadkiem.

>>> srednio wypasione IDE podpowiada Ci mozliwe operacje na danym obiekcie,
>>> deklaracje tego obiektu, pokazuje javadoca, podswietla wystapienia,
>>> pozwala skoczyc do deklaracji i z powrotem, itd. itp.,
>>
>> A co to ma do tworzenia/zmieniania analogicznego kodu? IDE mi podpowie,
>> co to jest?
>
> ke? co to jest analogiczny kod?

Na przykład podobny w zamysłach, ale nie dający się wygenerować czy
uprościć do jednego przypadku ze względu na różnice w API albo na to, że
obrabiane obiekty są niekompatybilnych typów.

>> IDE poradzi sobie z podpowiedzeniem metod obiektu w Perlu
>> albo Pythonie, gdzie przed uruchomieniem nie ma możliwości poznać typu
>> obiektu?
>
> rownie dobrze/zle, jak vim. ale co z tego?

To, że to podpowiadanie jest przereklamowane w językach z dynamicznym
systemem typów.

>>>> Ależ skąd, polemizować się nie da.
>>>
>>> da sie, bo wiekszosc porownan byla nieprawdziwa, lub co najmniej
>>> dyskusyjna.
>>
>> Niby które?
>
> LOL, naprawde chcesz bronic swoich zartow? ja myslalem, ze tylko
> zartowales... no, ale dobra:

Owszem, to był żart. Ale użyłem prawdziwych twierdzeń. Żart się mieścił
w absurdalnej ich kompozycji.

>> Czy Java ma równie bogatą bibliotekę z klasami co CPAN?
>
> jak nie bogatsza. choc przydaloby sie jakies scentralizowane repozytorium.
> bez tego trudno porownac.

Czyli nie ma. Trzeba szukać po sieci nieskoordynowanych bibliotek.

>> Czy narzuca
>> czytelne formatowanie jak Haskell czy Python?
>
> narzucanie formatowania budzi tyle kontrowersji, ze trudno jego brak uznac
> za wade.

Rodzi tylko jeden problem: "nie mogę pisać tak brzydko, jak mi się
podoba". W każdym projekcie standardy formatowania kodu są dobrą rzeczą,
więc albo narzuca się styl metodami technicznymi, albo politycznymi.

>> Czy równie łatwo jest
>> osadzić JSP w Apache'u co PHP?
>
> nie wiem, czy rownie. w kazdym badz razie latwo, skoro ja potrafie.

To mówię: trudniej.

>> Czy pozwala na takie manipulacje
>> systemem jak C?
>
> to kwestia bibliotek, C samo w sobie nie daje takich mozliwosci (chyba, ze
> mowimy o MS-DOSie i wykorzystaniu wskaznikow).

Nie bibliotek, tylko biblioteki standardowej i API systemu operacyjnego.
Czyli Java nie pozwala.

>> Czy gwarantuje niszczenie obiektów as-fast-as-possible,
>> jak w C++?
>
> w pewnym sensie daje to konstrukcja try/finally, uzywana do zamykania
> obiektow, ktore rzeczywiscie powinny zostac zamkniete w miare
> przewidywalnym momencie (strumienie, pliki, polaczenia sieciowe).

Czyli nie gwarantuje.

>> Czy ma wbudowane w _język_ (nie w bibliotekę) wsparcie dla
>> wątków, tak jak ma Ada?
>
> wbudowanie watkow w jezyk stanowi slepa uliczke ewolucji jezykow. zaden
> jezyk po Adzie w nia nie wdepnal[*]

To ciekawe. occam nie istnieje?

[moved from below]
>[*] oczywiscie zartuje, nie znam sie na tym. ale argument dobry jak kazdy
> inny w tej dyskusji (-:

Żaden inny język (powszechnie używany) nie poszedł w tym kierunku nie
dlatego, że to ślepa uliczka, tylko dlatego, że to rodzi pewne problemy
związane z samym modelem działania.

>> Nie? No proszę, do dupy ten język.
>
> do dupy sa argumenty i wyciagniety z nich wniosek, ale masz pelne prawo
> tak uwazac.

Argumenty, każdy z osobna, są dobre, o ile mówimy o zastosowaniu języka
adekwatnym do odpowiedniego argumentu. Do dupy jest zestawienie tych
argumentów razem i wyciąganie z takiego ich zestawienia rzeczonego
wniosku.

> zreszta sam uwazam, ze Java jest do dupy, ale z innych
> przyczyn (-:
>
>> Wiesz, prawo wolności wypowiedzi gwarantuje każdemu prawo do
>> wypowiedzenia dowolnych bredni, dopóki nie dotykają dóbr osobistych
>> innej osoby (np. zniesławienie).
>
> LOL. Perl to nie prezydent Kaczynski, nie przysluguje mu ochrona dobrego
> imienia z urzedu.

Ale ja nie oskarżam nikogo o zniesławienie języka. Ja tylko dowodzę, że
zestawienie argumentów wykazujące, że "Perl się nie nadaje" jest
absurdalne.

> nie sadze tez, zeby Ci sie udalo wykazac przed sadem, ze
> tamten artykul godzil w dobra osobiste Larry'ego Walla, czy Twoje, czy
> czyjekolwiek.

--
Secunia non olet.
Stanislaw Klekot




Twelve Hungry Mammoths - 12-03-2007 00:02

  On Sun, 11 Mar 2007 19:44:22 +0100, Stachu 'Dozzie' K.
<dozzie@dynamit.im.pwr.wroc.pl.nospam> wrote:
>> Eclipse powstalo jako IDE do Javy, ktora jest jezykiem wrecz
>> uzaleznionym
>> od IDE i w Javie bez IDE w zasadzie ani rusz. moze rzeczywiscie to jezyk
>> determinuje, czy IDE jest niezbedne, czy mozna sie bez niego obejsc?
>
> Może. A co w takim razie z C, C++ i Adą? Potrzebują czy nie potrzebują
> IDE?

Java potrzebuje dlatego, ze jest straszliwie przegadana. standardowe
biblioteka klas oraz popularne biblioteki posluguja sie strasznie dlugimi
nazwami klas i metod. poza tym przegadana jest skladnia, wiele rzeczy
trzeba kompilatorowi powtarzac po dwa albo i trzy razy. do tego skladnia
generykow to totalna tragedia. nieintuicyjna i brzydka. dlatego niezbedne
jest podpowiadanie skladni.

> No to powiedz, jakie. Poza podpowiadaniem metod, za którym zresztą nie
> przepadam i integracją z Subversion, od której wolę wierszopoleceniowego
> klienta.

i tak Cie nie przekonam, wiec szkoda mojej klawiatury. nie udalo mi sie
znalezc gotowej strony z feature list, ale jezeli chcesz, to spojrz tu:
http://www.eclipse.org/screenshots/.

moge rzucic dwa przyklady: 1) masa predefiniowanych refactoringow (z
podgladem proponowanych zmian, sprawdzaniem poprawnosci i mozliwoscia
zrobienia undo w wielu plikach jednoczesnie). 2) quick fix, czy propozycje
poprawek zmian dla bledow, ostrzezen i normalnego kodu. typu import
potrzebnych klas, dodanie deklaracji wyjatkow, czy nawet zmiany w rodzaju:
x.equals(y) na y.equals(x). naprawde, pisanie kodu w Javie w jakimkolwiek
srodowisku, ktore nie "rozumie" javy jest gorsze niz wyrywanie paznokci.

zreszta, jakikolwiek feature bym wymienil, Twoja odpowiedz bedzie "phi,
przeciez mi to samo daje takie_tam_czy_inne_narzedzie, ktore sobie
zintegrowalem z vimem, albo odpale z shella". ale wlasnie na tym polega
IDE, ze tego typu narzedzia sa zintegrowane i prekonfigurowane i ladnie ze
soba dzialaja.

>>> a przy tym jednocześnie jest pewnym utrudnieniem (słabiutki edytorek,
>>
>> ales sie przyczepil do tego edytora. IMHO nie jest taki slabiutki. wiem,
>> bo pracowalem przez ok. rok w Javie przy uzyciu vima. i jakos nie
>> tesknie
>> za nim.
>
> A ja bym tęsknił (pisałem w Vimie w Javie). Może kwestia specyfiki
> pisanego softu? Mnie często przydawało się zwijanie kodu, edycja
> blokowa (tryb VISUAL BLOCK)

mi tego troche brakowalo, ale od kiedy poznalem plugin Jalopy, juz mi nie
brakuje. od tej pory kod formatuje mi automat i wogole o tym nie mysle.
zreszta Eclipse ma tez wbudowany formater kodu dla Javy.

> i skakanie po mnóstwie plików bez
> przenoszenia ręki na myszkę.

ctrl-e - lista otwartych edytorow
ctrl-shift-t - lista typow w projekcie
ctrl-shift-r - lista zasobow w projekcie

po otwarciu zaczynasz pisac nazwe i strzalkami wybierasz plik. lista
dostepnych typow ma jeszcze taki ficzer, ze mozesz pisac inicjaly, czyli
wpisujesz ISE, a pojawia sie IllegalStateException. mozesz tez np. wpisac
*State i dostaniesz wszystkie typy, ktore maja State w nazwie.

wszystko bez uzycia myszki.

> Tu się zgadzam. Ale moim zdaniem edytor to na tyle często używany
> program, że warto poświęcić chwilę na jego poznanie.
>
>> wiekszosc po
>> prostu nie chce albo nie moze na to poswiecic tyle czasu. korzysci,
>> ktore
>> wymieniles, tez jakos niespecjalnie przemawiaja do wyobrazni.
>
> Korzyści wynikające z korzystania z systemu kontroli wersji (albo nawet
> trzech różnych) też często nie przemawiają do wyobraźni.

i znow zle porownanie. system kontroli wersji jest jak wehikul czasu, nie
przemawia Ci to do wyobrazni? poza tym, czy to nie zabawne, ze dowolny
system kontroli wersji jest duzo latwiejszy w obsludze niz edytor vim?

>>>>>> nie, ja pisalem o konkretnym zastosowaniu konkretnego ficzera,
>>>>>> dokladnie
>>>>>> wbudowanego klienta systemu kontroli wersji w sytuacji, gdy chcemy
>>>>>> np.
>>>>>> przejrzec zmiany przychodzace w kilkudziesieciu plikach zrodlowych,
>>>>>> a
>>>>>> w
>>>>>> dodatku w kilku mamy konflikty. w eclipse aby obejrzec zmiany
>>>>>> zwizualizowane w calkiem fajny sposob, wystarczy dwuklik na pliku na
>>>>>> liscie. konflikty rozwiazuje sie podobnie, klikajac na strzalke w
>>>>>> lewo
>>>>>> lub
>>>>>> w prawo w zaleznosci od tego, co uznajemy za lepsze. czy z linii
>>>>>> polecen
>>>>>> jest to rownie proste?
>>>>>
>>>>> Tak. Raz, że często wolę czytać unidiffy, dwa, że svn (klient)
>>>>> zostawia
>>>>> cztery pliki: dwie rewizje, plik z próbą sklejenia i zaznaczonymi
>>>>> konfliktami, oryginalny plik z working copy. I mogę sobie spokojnie
>>>>> porównać vimdiffem co trzeba.
>>>>
>>>> razy powiedzmy 20 plikow?
>>>
>>> Od tego mam shella, żeby załatwił mi automatyzację. Eclipse, zdaje się,
>>> nie umie tak?
>>
>> ale co ma umiec? tu nie ma co automatyzowac.
>
> Jest. Wywoływanie vimdiffa na konfliktach.

to eclipse robi sam podczas synchronizacji z repozytorium. a reszta? czyli
to:

>> kazdy konflikt jest inny. nad
>> kazdym trzeba pomyslec i podjac jakas decyzje. wziac jedna z wersji albo
>> je jakos polaczyc. co bys chcial automatyzowac?

jak powyzsze rozwiazujesz w swoim srodowisku?

> Wyobrażam sobie. Co więcej, zdaję sobie sprawę z tego, że jestem dośc
> specyficznym przypadkiem.

ha! od poczatku to wiedzialem, ale nie chcialem Ci wypominac. na poczatku
spytales "Możesz wyjaśnić, co dokładnie przydatne jest w kobylastych
IDE?", a potem kazdy argument zbywasz: mi to niepotrzebne. Tobie nie, ale
ogromnej armii programistow tak.

>>>> srednio wypasione IDE podpowiada Ci mozliwe operacje na danym
>>>> obiekcie,
>>>> deklaracje tego obiektu, pokazuje javadoca, podswietla wystapienia,
>>>> pozwala skoczyc do deklaracji i z powrotem, itd. itp.,
>>>
>>> A co to ma do tworzenia/zmieniania analogicznego kodu? IDE mi podpowie,
>>> co to jest?
>>
>> ke? co to jest analogiczny kod?
>
> Na przykład podobny w zamysłach, ale nie dający się wygenerować czy
> uprościć do jednego przypadku ze względu na różnice w API albo na to, że
> obrabiane obiekty są niekompatybilnych typów.

troche mi to smierdzi copy-paste-ologia, ale powiedz, czego bys oczekiwal
w takiej sytuacji od IDE? i czy daje Ci to vim?

>>> IDE poradzi sobie z podpowiedzeniem metod obiektu w Perlu
>>> albo Pythonie, gdzie przed uruchomieniem nie ma możliwości poznać typu
>>> obiektu?
>>
>> rownie dobrze/zle, jak vim. ale co z tego?
>
> To, że to podpowiadanie jest przereklamowane w językach z dynamicznym
> systemem typów.

zgadza sie, dlatego najbardziej wypasione IDE sa do jezykow statycznych.
ale to przeciez nie jedyny ficzer IDE.

>>> Czy Java ma równie bogatą bibliotekę z klasami co CPAN?
>>
>> jak nie bogatsza. choc przydaloby sie jakies scentralizowane
>> repozytorium.
>> bez tego trudno porownac.
>
> Czyli nie ma. Trzeba szukać po sieci nieskoordynowanych bibliotek.

nie do konca. jest takie narzedzie maven, ktore zajmuje sie
aktualizowaniem bibliotek. ma tez scentralizowane repozytorium, ktore
zarzadza wersjami i zaleznosciami.

>>> Czy narzuca
>>> czytelne formatowanie jak Haskell czy Python?
>>
>> narzucanie formatowania budzi tyle kontrowersji, ze trudno jego brak
>> uznac
>> za wade.
>
> Rodzi tylko jeden problem: "nie mogę pisać tak brzydko, jak mi się
> podoba".

w ten sposob pisza tylko dzieci. profesjonalisci moga miec rozne style,
ale nigdy nie pisza celowo brzydko. kogos, kto pisze brzydko badz
niechlujnie i nie pomagaja upomnienia, wywalilbym z zespolu w trymiga. ale
nie rozpoczynajmy kolejnej swietej wojny w tym watku.

> W każdym projekcie standardy formatowania kodu są dobrą rzeczą,
> więc albo narzuca się styl metodami technicznymi, albo politycznymi.

niemniej jednak trudno te "wade" porownac np. "w Perlu obsluga
wielowatkowosci jest trudna". narzucanie formatowania ma wiecej
przeciwnikow niz zwolennikow, w tym drugim temacie jest to zdanie
przytlaczajacej wiekszosci.

>>> Czy równie łatwo jest
>>> osadzić JSP w Apache'u co PHP?
>>
>> nie wiem, czy rownie. w kazdym badz razie latwo, skoro ja potrafie.
>
> To mówię: trudniej.

ok. punkt dla Ciebie. ale ja nie uzywam Apache, tylko Tomcata i Weblogic.
czy w nich jest rownie latwo osadzic PHP? (-:

>>> Czy pozwala na takie manipulacje
>>> systemem jak C?
>>
>> to kwestia bibliotek, C samo w sobie nie daje takich mozliwosci (chyba,
>> ze
>> mowimy o MS-DOSie i wykorzystaniu wskaznikow).
>
> Nie bibliotek, tylko biblioteki standardowej

co takiego jest w _standardowej_ bibliotece C, co pozwala na latwa
manipulacje np. WinAPI? albo API MacOS? wiem, ze biblioteka C jest czescia
POSIX (albo odwrotnie), ale swiat nie konczy sie na unixach.

> i API systemu operacyjnego.

API to API. nie jest czescia jezyka C. jest tak samo dostepne dla
wszystkich jezykow.

> Czyli Java nie pozwala.

pozwala. przy uzyciu odpowiedniej biblioteki, jak we wszystkich innych
jezykach, poza assemblerem.

>>> Czy gwarantuje niszczenie obiektów as-fast-as-possible,
>>> jak w C++?
>>
>> w pewnym sensie daje to konstrukcja try/finally, uzywana do zamykania
>> obiektow, ktore rzeczywiscie powinny zostac zamkniete w miare
>> przewidywalnym momencie (strumienie, pliki, polaczenia sieciowe).
>
> Czyli nie gwarantuje.

gwarantuje, tyle ze musisz jawnie napisac, co chcesz zniszczyc.

>>> Czy ma wbudowane w _język_ (nie w bibliotekę) wsparcie dla
>>> wątków, tak jak ma Ada?
>>
>> wbudowanie watkow w jezyk stanowi slepa uliczke ewolucji jezykow. zaden
>> jezyk po Adzie w nia nie wdepnal[*]
>
> To ciekawe. occam nie istnieje?

istnieje. Erlang zreszta tez chyba.

> [moved from below]
>>[*] oczywiscie zartuje, nie znam sie na tym. ale argument dobry jak
>> kazdy
>> inny w tej dyskusji (-:
>
> Żaden inny język (powszechnie używany) nie poszedł w tym kierunku nie
> dlatego, że to ślepa uliczka, tylko dlatego, że to rodzi pewne problemy
> związane z samym modelem działania.

no wlasnie, wiec implementacja watkow w bibliotece to zaleta, a nie wada.
dzieki za pomoc w obaleniu wlasnego argumentu (-:

>>> Nie? No proszę, do dupy ten język.
>>
>> do dupy sa argumenty i wyciagniety z nich wniosek, ale masz pelne prawo
>> tak uwazac.
>
> Argumenty, każdy z osobna, są dobre, o ile mówimy o zastosowaniu języka
> adekwatnym do odpowiedniego argumentu.

IMHO wszystkie oprocz jednego udalo mi sie obalic, ale niech Ci bedzie (-:

> Ale ja nie oskarżam nikogo o zniesławienie języka. Ja tylko dowodzę, że
> zestawienie argumentów wykazujące, że "Perl się nie nadaje" jest
> absurdalne.

wczesniej uzywales ostrzejszych okreslen, np. "nieuczciwe".

pzdr
szeryf




Grzegorz Staniak - 29-03-2007 00:04

  On 04.03.2007, hubert depesz lubaczewski <depesz@depesz.com> wroted:

> możecie napisać co was denerwuje w perlu?

Spóźnione, ale szczere:

1) ubogi system typów obudowany dziwnościami typu kontekst skalarny/listowy;
2) brak wbudowanej obsługi wyjątków;
3) domyślnie globalna widoczność zmiennnych;
4) toporny i mało elastyczny sposób przekazywania argumentów do funkcji;
5) obiektowość jako afterthought.

Pozdrawiam,
GS
--
Grzegorz Staniak <gstaniak _at_ wp [dot] pl>




hubert depesz lubaczewski - 30-03-2007 00:08

  On 2007-03-28, Grzegorz Staniak <gstaniak@wp.pl> wrote:
> 2) brak wbudowanej obsługi wyjątków;

eval + Exception ?

> 3) domyślnie globalna widoczność zmiennnych;

strict?

> 4) toporny i mało elastyczny sposób przekazywania argumentów do funkcji;

tego nie rozumiem. chodzi ci o to, że nie ma argumentów nazwanych?

depesz

--
quicksil1er: "postgres is excellent, but like any DB it requires a
highly paid DBA. here's my CV!" :)
http://www.depesz.com/ - blog dla ciebie (i moje CV)
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl



  • Strona 3 z 4 • Znaleźliśmy 187 postów • 1, 2, 3, 4

    comp
    =?ISO-8859-2?Q?Re=3A_Informatyka=2C_Java=2C_EJB=2C_Ajax=2C?== ?ISO-8859-2?Q?_Spring=2E_Czy=BFby_to_koniec_=B6wiata=2C_czy? ==?ISO-8859-2?Q?_te=BF_nasze_uczelnie_b=EAd=B1_uczy=B3y_w_k?== ?ISO-8859-2?Q?o=F1cu!_czego_praktyczne?= =?iso-8859-2?q?Informatyka,_Java,_EJB,_Ajax,_Spring=2E_Czy=BF by_to_koniec_=B6wiata,_czy_te=BF_nasze_uczelnie_b= EAd=B1_uczy=B3y_w_ko=F1cu!_czego_praktycznego_=2E= 2E=2E=2E?= =?ISO-8859-2?Q?b=B3=B1d_w_bazie=2C_nie_wiem_od_czego?==?ISO-8859-2?Q?_zaczac_szukanie?= =?iso-8859-2?Q?=5Blama=5D_Mapa_-_od_czego_zacz=B1=E6=3F?= do czego uzywac perl-a? czy warto poznac ten jezyk [ORACLE] - Czego używcie do monitorowanie swoich baz? replikacja w Mysql 5.0.27- czego brak ? Od czego zacząć robienie strony ? Aplikacja dla laboratorium - czego użyć [mySQL] Sprawdzenie, czego jest najwiecej
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • tejsza.htw.pl
  • Cytat

    Decede mihi sole - nie zasłaniaj mi słonca.
    Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści
    Hoc fac - tak czyń.
    A tergo - od tyłu; z tyłu.
    I czarne włosy posiwieją. Safona

    Valid HTML 4.01 Transitional

    Free website template provided by freeweblooks.com