Novi jezici, njihove paradigme i web programiranje :)

C, C++, Java, PHP, Ruby...

Moderator/ica: Moderatori/ce

Pravila foruma
U naslovu teme unutar uglatih zagrada navesti o kojem jeziku je riječ. Primjer: [Java]
Avatar
hightech
Postovi: 119
Pridružen/a: 21 vel 2013, 01:00
Spol: M
OS: wheezy, slekver ;)
Lokacija: /dev/hda2, etc
Kontakt:

Re: Novi jezici, njihove paradigme i web programiranje :)

Post Postao/la hightech »

Logicno za znakove jednakosti - naravno da "==" nije isto sto i "===" - jednako i apsolutno jednako i nisu neka enigma :) to nije greska jezika vec greska onoga koj se hoce izraziti istim ...
To koliko vidim i nije bag vec pravilo ! :)
... šta god da učiniš ... NISI DOBRO IZRAČUNAO ...
... for good fun and advanced thinking join WS1 ...
... do Boga je put dosta kratak, ne moras dalje od svog srca ...
Avatar
tartaglia
Postovi: 400
Pridružen/a: 13 sij 2009, 12:57
Spol: M
OS: openSuse 11.3
Lokacija: Zagreb

Re: Novi jezici, njihove paradigme i web programiranje :)

Post Postao/la tartaglia »

Zato imaš equals metodu u normalnim jezicima, koju možeš overridat i definirat da jednako bude ono kaj ti oćeš da bude.

Java npr.

equals() must define an equality relation (it must be reflexive, symmetric, and transitive). In addition, it must be consistent (if the objects are not modified, then it must keep returning the same value). Furthermore, o.equals(null) must always return false.
Avoid the Gates of Hell. Use Linux!
goran_
Postovi: 116
Pridružen/a: 13 ruj 2013, 21:29
Spol: M

Re: Novi jezici, njihove paradigme i web programiranje :)

Post Postao/la goran_ »

hightech je napisao/la:Logicno za znakove jednakosti - naravno da "==" nije isto sto i "===" - jednako i apsolutno jednako i nisu neka enigma :) to nije greska jezika vec greska onoga koj se hoce izraziti istim ...
To koliko vidim i nije bag vec pravilo ! :)
Ako su pravila automatske konverzije tipova takva da se teško pamte, lako zaboravljaju i ako je u praksi kod
toga užasno lako pogriješiti, onda mislim da to je greška jezika. Ako je ('5PHP' == 5) istina, ('PHP5'==5) laž, a ('PHP'==0) opet istina - onda IMHO jezik ima problem. ili najblaže rečeno - čudna pravila.
Znam da nije bug, jer ovo je samo jedan primjer koji sam složio baš čitajući pravilo.

Ili recimo, ako mi se nekoliko puta dogodi da tražim grešku jer mislim da ne znam napamet što sve točno empty() evaluira kao istinu, a onda vidim da radi ono što mi treba, ali je problem u nečem drugom:

"Prior to PHP 5.5, empty() only supports variables;"

to znači da sve donedavno nisam mogao imati nekakav izraz unutar tog empty(), nego sam morao prvo strpati u varijablu, pa onda provući kroz empty(). Izgleda sitnica, ali može zagorčati život. Jednostavno, ne očekuješ takve stvari.

Ne volim ni previše pljuvanja po nekom jeziku, ni dizanje u nebesa, jer kao što je ZDroid rekao, u svakom bi se jeziku vjerojatno našlo nešto loše. Ali to onda treba priznati, i fokusirati se, kad god se može, na ono što je dobro.
Inače je užasno teško bilo što naučiti, a danas ionako svatko mora naučiti i previše toga što tržište i praksa nameću.
A nameću puno više od PHP-a. U tome je problem.
Zato se i gubim u diskusijama. Ovaj tvoj potpis mi svaki put razbije koncentraciju.
Neuroni stvore nove veze i onda ih je teško "prežičiti". Cijele generacije su danas takve.
Dobro, vjerojatno nije samo tvoj potpis kriv, ali ...NETIQUETTE
Avatar
4ndY
Moderator
Postovi: 4060
Pridružen/a: 15 svi 2008, 18:05
Spol: M
OS: Fedora/KDE
Lokacija: Hamburg, DE
Kontakt:

Re: Novi jezici, njihove paradigme i web programiranje :)

Post Postao/la 4ndY »

Ako pustimo to brdo nelogičnih i apsurdnih stvari što boravi unutar samog PHP-a. Meni je puno gore što se PHP developeri ne drže nikakvih normi koje su prihvaćene u većini drugih projekata i jezika. Npr., uzmimo samo kako lako kidaju ABI kompatibilnost na mirror verzijama! Očekivano je da PHP5 neće izvoditi kod napisan za PHP4, ali je posve neočekivano da PHP5.3 neće vrtiti 5.2, 5.4 neće vritit 5.3 itd.! To je po meni katastrofa. Mirror verzija uvijek predstavlja donošenje novih mogućnosti i bugfixeve ali nikada kidanje kompatibilnosti, no meni se redovito starije (dvije-tri godine) PHP aplikacije raspadnu nakon što dođe neki update PHP-a. Komedija od jezika.
A neutron walks into a bar; he asks the bartender, 'How much for a beer?' The bartender looks at him, and says 'For you, no charge.'
Avatar
shrike
Moderator
Postovi: 10322
Pridružen/a: 07 pro 2007, 18:07
Spol: Y
OS: utuntu 19.10
Kontakt:

Re: Novi jezici, njihove paradigme i web programiranje :)

Post Postao/la shrike »

4ndY je napisao/la:Očekivano je da PHP5 neće izvoditi kod napisan za PHP4, ali je posve neočekivano da PHP5.3 neće vrtiti 5.2, 5.4 neće vritit 5.3 itd.! To je po meni katastrofa. Mirror verzija uvijek predstavlja donošenje novih mogućnosti i bugfixeve ali nikada kidanje kompatibilnosti, no meni se redovito starije (dvije-tri godine) PHP aplikacije raspadnu nakon što dođe neki update PHP-a. Komedija od jezika.
Ovo je točno jedan od 2 razloga zašto mrzim ruby. Verzija 1.9.3 trga kompatibilnost 1.9.2 Ček, pa ko normalan krši kompatibilnost na trećoj decimali ??!?!?!
Es gibt keinen Gott, kein Universum, keine menschliche Rasse, kein irdisches Leben, keinen Himmel, keine Hölle. Es ist alles ein Traum - ein grotesker und dummer Traum. Nichts existiert außer dir. Und du bist nur ein Gedanke - ein vagabundierender Gedanke, ein nutzloser Gedanke, ein heimatloser Gedanke, der verloren in der leeren Ewigkeit wandelt!
Avatar
hightech
Postovi: 119
Pridružen/a: 21 vel 2013, 01:00
Spol: M
OS: wheezy, slekver ;)
Lokacija: /dev/hda2, etc
Kontakt:

Re: Novi jezici, njihove paradigme i web programiranje :)

Post Postao/la hightech »

To o cemu pricate su zastarele funkcije ... zasto koristiti zastarelu funkciju, pored nove unapredjene funkcije objedinjene drugim imenom ...
... šta god da učiniš ... NISI DOBRO IZRAČUNAO ...
... for good fun and advanced thinking join WS1 ...
... do Boga je put dosta kratak, ne moras dalje od svog srca ...
Avatar
shrike
Moderator
Postovi: 10322
Pridružen/a: 07 pro 2007, 18:07
Spol: Y
OS: utuntu 19.10
Kontakt:

Re: Novi jezici, njihove paradigme i web programiranje :)

Post Postao/la shrike »

Zbog backward kompatibilnosti? Zašto bi trebao kontinuirano prepisivati istir program na noviju i noviju verziju? Istina, to je lako kada je program malen, ali kada je velik to postaje projektičina za sebe i kompletno je neprihvaltjivo to raditi.
Es gibt keinen Gott, kein Universum, keine menschliche Rasse, kein irdisches Leben, keinen Himmel, keine Hölle. Es ist alles ein Traum - ein grotesker und dummer Traum. Nichts existiert außer dir. Und du bist nur ein Gedanke - ein vagabundierender Gedanke, ein nutzloser Gedanke, ein heimatloser Gedanke, der verloren in der leeren Ewigkeit wandelt!
Avatar
hightech
Postovi: 119
Pridružen/a: 21 vel 2013, 01:00
Spol: M
OS: wheezy, slekver ;)
Lokacija: /dev/hda2, etc
Kontakt:

Re: Novi jezici, njihove paradigme i web programiranje :)

Post Postao/la hightech »

PHP prosto nema svoju dogmu (jos uvek), tj. razvija se konstantno sto implicira i niz promena kod funkcija koje se unapredjuju ... Mislim da je to upravo i razlog zasto je u novijim verzijama stvoren PHP OOP ...
A to se ne odnosi na vecinu funkcija i mozda bi bilo dobro stvoriti PHP portovane funkcije u slucaju takvog problema, ali i dalje mislim da je sve to zanemarljivo kada se pogleda na to da je PHP prilagodljiv jezik web-u i da je kod njega upravo ta fleksibilnost dogmaticna ...
... šta god da učiniš ... NISI DOBRO IZRAČUNAO ...
... for good fun and advanced thinking join WS1 ...
... do Boga je put dosta kratak, ne moras dalje od svog srca ...
Avatar
shrike
Moderator
Postovi: 10322
Pridružen/a: 07 pro 2007, 18:07
Spol: Y
OS: utuntu 19.10
Kontakt:

Re: Novi jezici, njihove paradigme i web programiranje :)

Post Postao/la shrike »

Ovaj topic sam otovrio zato što PHP nije jedini koji se tako ponaša, već jedan od mnogih i to je ono što meni smeta. Ne vidim to kao nikakvu prednost, već kao katastrofalnu manu.
Es gibt keinen Gott, kein Universum, keine menschliche Rasse, kein irdisches Leben, keinen Himmel, keine Hölle. Es ist alles ein Traum - ein grotesker und dummer Traum. Nichts existiert außer dir. Und du bist nur ein Gedanke - ein vagabundierender Gedanke, ein nutzloser Gedanke, ein heimatloser Gedanke, der verloren in der leeren Ewigkeit wandelt!
Avatar
4ndY
Moderator
Postovi: 4060
Pridružen/a: 15 svi 2008, 18:05
Spol: M
OS: Fedora/KDE
Lokacija: Hamburg, DE
Kontakt:

Re: Novi jezici, njihove paradigme i web programiranje :)

Post Postao/la 4ndY »

shrike je napisao/la: Ovo je točno jedan od 2 razloga zašto mrzim ruby. Verzija 1.9.3 trga kompatibilnost 1.9.2 Ček, pa ko normalan krši kompatibilnost na trećoj decimali ??!?!?!
Nemam ekstenzivna iskustva s rubyjem, ali sam čuo na više mjesta za taj problem s verzijama i kompatibilnosti - zato ni ne pokušavam imati iskustva s istim 8-)

Vidio sam da imaju workaround za to putem RVM-a, ali opet je to workaround. Postavio sam samo na jednom sajtu Discourse što se čini kao moćan forumski softver, ali napisan je u rubyju :zvizdi
A neutron walks into a bar; he asks the bartender, 'How much for a beer?' The bartender looks at him, and says 'For you, no charge.'
Odgovori