eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingProgramista iOS - Łódź › Re: Programista iOS - Łódź
  • Data: 2014-04-09 11:38:15
    Temat: Re: Programista iOS - Łódź
    Od: "Stachu 'Dozzie' K." <d...@g...eat.some.screws.spammer.invalid> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    On 2014-04-09, g...@g...com <g...@g...com> wrote:
    > W dniu wtorek, 8 kwietnia 2014 23:49:40 UTC+2 użytkownik Stachu 'Dozzie' K.
    napisał:
    >> On 2014-04-08, g...@g...com <g...@g...com> wrote:
    >>
    >> > W dniu wtorek, 8 kwietnia 2014 21:45:59 UTC+2 użytkownik g...@g...com
    napisał:
    >>
    >> >> Czyli Twojego zarzutu nie mozna rozumiec jako zarzutu przeciwko PHP, tylko
    >> >> przeciwko apache'owi i mod_php (jednak ten sam zarzut bedzie sie stosowal
    >> >> rowniez do apache'a z mod_python, mod_perl czy mod_ruby)
    >> >
    >> > Jeszcze przyszlo mi do glowy, ze przeciez w PHP mozna korzystac z pamieci
    >> > wspoldzielonej. Jesli do tego zaimplementuje sie odpowiednio interfejs
    >> > ArrayAccess, to [...]
    >>
    >> Skończ już bronić PHP w tak niedorzeczny sposób. Twoje argumenty są tak
    >> słabe, że aż trudno uwierzyć, że ktokolwiek mający cokolwiek wspólnego
    >> z programowaniem mógł je zaproponować (piję tu w dużej części do twojej
    >> propozycji oparcia się o nieudokumentowane wnętrzności interpretera;
    >> tutaj proponujesz pisać samemu dzikie hacki, które pozwolą na stworzenie
    >> bardzo kulawego serwera aplikacji, którego i tak nikt nie będzie
    >> używać).
    >
    > Schlebia mi, ze masz swoja opinie na temat mocy moich argumentow, ale jezeli
    > chcesz ja prezentowac publicznie, to bylbym wdzieczny, gdybys oprocz
    > samej oceny podal rowniez uzasadnienie.

    Uzasadnienie oceny? Pytasz dlaczego jest bezsensownym twoje twierdzenie,
    że język jest przyzwoity, bo można oprzeć się o detale implementacyjne,
    czyli wnętrzności jego runtime'u (o którym podobno w ogóle nie mówisz,
    bo analizujesz tylko język)? Albo że język jest przyzwoity, bo
    teoretycznie można (wkładając dopiero mnóstwo wysiłku) zmusić go do
    pracy w modelu, w którym praktycznie nikt go nie używa?

    Przyznam, że ciężko mi wyjaśnić dlaczego te dwa są bezsensowne. Podałbym
    "zdrowy rozsądek" jako powód, ale trudno się dowodzi "zdrowy rozsądek".

    > Bo na chwile obecna, jezeli nawet
    > moje argumenty sa slabe, to Twoich nie ma wcale.

    Misiu, przejrzyj może wątek jeszcze raz. Było parę argumentów *ode mnie*,
    z niedorzecznymi, nieintuicyjnie (gwarancje złożoności anyone?)
    działającymi tablicami i z kiepskim interpreterem na czele.

    > Oczywiscie, mozna dyskutowac nad tym, czy korzystanie z pamieci wspoldzielonej
    > w ogole to dobry pomysl. Ale to juz nie jest kwestia dotyczaca PHPa,

    Chwila, stop. Najpierw *sam* wyciągasz pamięć współdzieloną, bo "można
    w ten sposób zmusić PHP do pracy jako serwer aplikacji", a teraz mówisz,
    że to nie jest kwestia dotycząca PHP?

    > bo ta sama
    > dyskusja odnosilaby sie w rownym stopniu do Pythona, Ruby'ego, Javy i
    > w zasadzie wszystkich jezykow programowania, w ktorych ktokolwiek chcialby
    > cos podobnego wprowadzic.

    Nie. W Pythonie są już gotowe serwery aplikacji (Twisted, Phusion
    Passenger, Zope). W Rubym też. Java ma ich pewnie nawet więcej, niż
    Python, Ruby i Perl razem wzięte. W PHP nie ma *żadnego*, tylko model
    "żadanie-uruchom program-zakończ program".

    >> PHP to nie tylko *sam język*, ale również *biblioteka standardowa*
    >> (która jest obrzydliwa) i *środowisko uruchomienia* (które potrafi
    >> pracować sensownie jedynie w modelu "jedno żądanie = jedno uruchomienie
    >> i zakończenie programu"). Zupełnie nie ma znaczenia, co można osiągnąć
    >> z tym runtimem mając do dyspozycji kompetentny zespół specjalistów
    >> i kilka lat pracy. Istotne jest co PHP daje *aktualnie*.
    >
    > A jak pisze sie w PHP wtyczki do Renoise'a (program muzyczny), to to nadal
    > jest "*srodowisko uruchomienia* (ktore potrafi pracowac sensownie jedynie
    > w modelu "jedno zadanie = jedno uruchomienie i zakonczenie programu")"?

    Jeden odstający program. I autorzy Renoise są zostawieni samym sobie,
    nikt im nie pomoże przy problemach z integracją PHP.

    > Albo skrypty CLI?

    Wiesz ile się pisze narzędzi do wiersza poleceń w PHP? Prawie wcale.
    W PHP skrypty do wiersza poleceń piszą tylko ci, którzy nie znają
    żadnego innego języka.

    #v+
    [dozzie@uw000444 bin]$ pwd
    /usr/bin
    [dozzie@uw000444 bin]$ head -n 1 * | grep --binary-files=text --count php
    3
    [dozzie@uw000444 bin]$ head -n 1 *(.) | grep --binary-files=text php
    ==> php5 <==
    ==> php5-cgi <==
    ==> php_count <==
    [dozzie@uw000444 bin]$ head -n 1 * | grep --binary-files=text --count python
    102
    [dozzie@uw000444 bin]$ head -n 1 * | grep --binary-files=text --count ruby
    26
    [dozzie@uw000444 bin]$ head -n 1 * | grep --binary-files=text --count perl
    406
    [dozzie@uw000444 bin]$ head -n 1 * | grep --binary-files=text --count -E
    '/bin/(sh|bash)'
    339
    [dozzie@uw000444 bin]$ /bin/ls -1 | wc -l
    2711
    [dozzie@uw000444 bin]$
    #v-

    > (I tutaj ciekawostka: obsluga sygnalow uniksowych
    > w PHP jest zrobiona calkiem przyzwoicie)

    Że co? W PHP obsługa uniksowych sygnałów jest zrobiona dokładnie jak
    w C. Alternatywnie, obsługa uniksowych sygnałów jest zrzucona na libev.

    Nie można zwykłego przekazywania wszystkiego jak leci niżej nazywać
    "zrobionym całkiem przyzwoicie".

    > Do tej pory, ilekroc pisalem o PHP, mialem na mysli jezyk wlasnie,
    > a nie srodowisko uruchomieniowe (ktore mozna by bylo w tym kontekscie
    > precyzyjniej okreslic jako mod_php, wiec nie ma potrzeby wprowadzania
    > zamieszania). Podobnie, czym innym jest uzywanie mod_ruby, a czym innym
    > korzystanie z Railsow.

    Ale już nie da się oddzielić języka od zbioru interpreterów. Jak się
    pisze o Pythonie, to ma się na myśli wszystkie trzy: składnię,
    bibliotekę standardową i główną implementację interpretera (CPython).
    To samo dotyczy Rubyego i czegokolwiek innego. Trudno prowadzić rzeczową
    dyskusję o języku w oderwaniu od jego interpretera.

    >> A że PHP jest zupełne w sensie Turinga, to i teoretycznie można zrobić
    >> *dokładnie to samo*, co w Haskellu albo innym Pythonie. Tylko że *będzie
    >> to niewygodne* (bo język niedostosowany) i *nikt* tego tak w PHP
    >> *nigdy nie robił*, więc ktokolwiek będzie chciał go użyć inaczej zostaje
    >> sam bez jakiejkolwiek pomocy.
    >
    > Brainfuck tez jest zupelny w sensie Turinga, a jednak mysle, ze sie
    > zgodzisz, ze PHP jest mimo wszystko lepszy do pisania programow.

    Głównie dlatego, że głównym założeniem Brainfucka było, żeby program
    w nim napisany wyglądał jak najdziwniej. Argument niedorzeczny, bo PHP
    miało być łatwe w użyciu, a nie dziwne.

    > Zas co do rzeczy, ktore ktos juz kiedys robil, to coz -- one sa juz
    > zrobione.

    Tak? Pełnoprawny serwer aplikacji w PHP? Pokaż.

    >> Naprawdę, to nie jest stanowisko, którego może bronić osoba pisząca
    >> jakiekolwiek programy.
    >
    > Jakie stanowisko? Ze jesli chce sie cos miec, to mozna to samemu zrobic?

    I dlatego język jest przyzwoity? Bo można zrobić samemu? Bo tak do tej
    pory wynika z twoich wypowiedzi. W Brainfucku też można napisać serwer
    aplikacji. To przyzwoity język!!!

    > Ze zamiast narzekac, ze cos jest marne, mozna to poprawic, albo przynajmniej
    > zaproponowac autorowi, jak mozna by to poprawic?

    Autorowi było proponowane wielokrotnie (poszukaj po bugtrackerze PHP).
    Wynik widać.

    A poprawianie tak, żeby to miało sens, w tym przypadku powinno polegać
    na stworzeniu zupełnie nowego języka, o wygodniejszej składni, bogatszej
    semantyce i lepszemu runtime'owi. I wiesz co? Takie rzeczy są robione.
    Naprawdę. Możesz poszukać jak nie wierzysz.

    --
    Secunia non olet.
    Stanislaw Klekot

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: