🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.python
Article #26690

Re: python vs php - potrzebne argumenty

#26690
From: Grzegorz Staniak
Date: Fri, 30 Oct 2009 08:14
110 lines
5065 bytes
On 30.10.2009, pakalk <pakalk@gmail.com> wroted:

>> Zapytaj kogoś, kto miał na studiach zajęcia ze struktur danych.
>> Podpowiedź: wydajność.
>
> Tylko, ze PHP nie ma wcale polaczonych list i hashy (map) w jednej
> strukturze. Posiada tablice asocjacyjne.

Sprawdź sobie, jak działa 'array'. Ze szczególnym uwzględnieniem
składni udającej listy.

>> > Eeee... Tablice asocjacyjne z PHP sa powszechnie chwalone
>>
>> Przez kogo konkretnie?
>
> Przez wiele osob.

A konkretnie? Kto i za co je chwali? Przejdź się na dowolny wydział
informatyki, zapytaj ludzi od struktur danych. Jeśli usłyszysz 
pochwały, daj znać -- to będą chyba pierwsze jakie PHP od nich
dostanie.

>> Decyzja o zrobieniu listy-i-hasza jako mapującej struktury danych
>> jest po prostu debilna.
>
> Nic takiego nie ma miejsca.

Sorki, ale nie masz pojęcia o czym mówisz. Sprawdź sobie jak jest
implementowane 'array' i zastanów się, dlaczego składniowo udaje 
również listę. 

[...]
>> Poza PHP robi to chyba tylko AWK. Dzięki temu masz strukturę
>> powolną jak diabli, ale za to pozbawioną zalet listy: jeśli po
>> usunięciu indeksu muszę używać funkcji żeby indeksy zachowały
>> ciągłość:
>>
>> $array = array_values($array);
>
> Pewnie dlatego, ze to nie jest tablica indeksowana 0..n tylko
> tablica asocjacyjna klucz=>wartosc - to, ze jest to lista, to juz
> Twoj wymysl.

Składniowo udaje listę, prawda? Normalny hasz nie pozwala na 
deklarowanie go np. jako '$array = array("a", "b", "c");'. 

> Dziwne by bylo tez, gdyby zachowywalo sie to inaczej
> dla roznych typow indeksow.

Dziwne to jest np. to dlaczego PHP nie ma list, tylko protezę 
w postaci specjalnego zachowania haszy. Chodzi w końcu o dość 
podstawowy typ danych. Zmuszanie ludzi do używanie kulawej 
pseudo-listy, ale za to powolnej, to jest dość typowy dla PHP
przypadek strzelania sobie w stopę.

>> to coś jest grubo nie tak. Kto konkretnie chwali te tablice i za
>> co, jeśli można wiedzieć?
>>
>> > a jesli chodzi o struktury danych...
>>
>> >http://www.php.net/manual/en/spl.datastructures.php
>>
>> To, że musisz sobie z czasem sztukować funkcjonalność
>> rozszerzeniami
>
> Jakie rozszwrzenie? Standard PHP Library - to sie tak nazywa.

Mhm. A ty oczywiście wiesz czym się różni _język_ od _standardowej
biblioteki_? I oczywiście ignorujesz przypadek skopanego int, które
trzeba obchodzić używając bcmath?

[...]
>> > Tak? Gdzie? Jak dla mnie to one dzialaja, jak pelnoprawne
>> > referencje.
>>
>> To są aliasy, nie referencje (w PHP poniżej 5).
>
> Czemu mamy rozmawiac o czyms, co juz nie jest nawet przez Zenda
> wspierane?! 

Ważne jest, że jest stosowane. Sprawdź sobie ile jeszcze masz
instalacji PHP4. 

> Moze pogadajmy o 'classic-style classes', albo pythonie
> 1.0? Taki doskonaly byl?

Możesz się zaperzać i wściekać, ale trudno ci będzie zmienić fakty.
Python, niezależnie od wersji, był zaprojektowanym przez fachowca
językiem ogólnego przeznaczenia, a nie powiązanym taśmą klejącą workiem 
funkcyjek do obróbki formularzy HTML.

[...]
>> >> OOP jako afterthought, ledwo doprowadzone do używalności w PHP
>> >> 5.
>>
>> > Prosze Cie..
>>
>> O co?
>
> Nie rozumiem krytyki OOP - moze konkrety?

Czego konkretnie nie rozumiesz? Że OOP zostało zgodnie z pehapową
tradycją bezmyślnie doklejone taśmą do którejś kolejnej wersji?
Po prostu sprawdź kiedy i w jaki sposób się pojawiło. Według ciebie
w wersjach poniżej 5 to coś było używalne?

GS
-- 
Grzegorz Staniak <gstaniak _at_ wp [dot] pl>
Nocturnal Infiltration and Accurate Killing
Technical Details
Message-ID: <hce79t$m49$1@news.lublin.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!feed.news.interia.pl!news.cyf-kr.edu.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!lublin.pl!news.lublin.pl!not-for-mail
References: <h83in7$rl3$1@inews.gazeta.pl> <h8447e$mg9$1@inews.gazeta.pl> <6a8e97cb-add7-450a-b7f2-f16ecc3cd0f6@y23g2000yqd.googlegroups.com> <6a691836-80db-4b66-bc41-f3c15e6782f7@v36g2000yqv.googlegroups.com> <6e26a02f-20fa-4a82-a722-9fbf78f0ef29@z41g2000yqz.googlegroups.com> <hcc9nt$eqr$1@news.lublin.pl> <f03c49b0-651b-4afa-ad73-db8dde63fdef@p35g2000yqh.googlegroups.com> <hccvvt$u0t$1@news.lublin.pl> <ac46bc62-a3ee-40a1-ac5d-860be3029272@z41g2000yqz.googlegroups.com> <hcd7ck$3a6$1@news.lublin.pl> <2f2d1c53-fa9a-40b1-be71-60f530a0be72@g23g2000yqh.googlegroups.com>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!feed.news.interia.pl!news.cyf-kr.edu.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!lublin.pl!news.lublin.pl!not-for-mail
From: Grzegorz Staniak <gstaniak@wp.pl>
Newsgroups: pl.comp.lang.python
Subject: Re: python vs php - potrzebne argumenty
Date: Fri, 30 Oct 2009 08:14:53 +0000 (UTC)
Organization: lubman
Lines: 110
Message-ID: <hce79t$m49$1@news.lublin.pl>
References: <h83in7$rl3$1@inews.gazeta.pl> <h8447e$mg9$1@inews.gazeta.pl> <6a8e97cb-add7-450a-b7f2-f16ecc3cd0f6@y23g2000yqd.googlegroups.com> <6a691836-80db-4b66-bc41-f3c15e6782f7@v36g2000yqv.googlegroups.com> <6e26a02f-20fa-4a82-a722-9fbf78f0ef29@z41g2000yqz.googlegroups.com> <hcc9nt$eqr$1@news.lublin.pl> <f03c49b0-651b-4afa-ad73-db8dde63fdef@p35g2000yqh.googlegroups.com> <hccvvt$u0t$1@news.lublin.pl> <ac46bc62-a3ee-40a1-ac5d-860be3029272@z41g2000yqz.googlegroups.com> <hcd7ck$3a6$1@news.lublin.pl> <2f2d1c53-fa9a-40b1-be71-60f530a0be72@g23g2000yqh.googlegroups.com>
NNTP-Posting-Host: gwz82.internetdsl.tpnet.pl
Mime-Version: 1.0
X-Trace: news.lublin.pl 1256890493 22665 80.52.205.82 (30 Oct 2009 08:14:53 GMT)
X-Complaints-To: abuse@news.lublin.pl
NNTP-Posting-Date: Fri, 30 Oct 2009 08:14:53 +0000 (UTC)
User-Agent: slrn/0.9.9p1 (Linux)
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit