-
Data: 2012-05-17 09:35:02
Temat: Re: jezyki z definiowaniem operatorow
Od: Maciej Sobczak <s...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On May 16, 6:09 pm, " M.M." <m...@g...pl> wrote:
> W Javie nie ma (chyba że jakoś niedawno dodali i nie zdążyłem
> uzupełnić informacji) i nie powoduje to problemów.
Co to znaczy "nie powoduje problemów"? To jest kwestia czytelności
kodu a nie tego, czy program zadziała.
W jezyku z prawdziwymi szablonami brak przeciążania operatorów byłby
realnym problemem. Czy możeby powiedzieć, że brak przeciążania
operatorów w Javie nie powoduje problemów ze względu na istniejący już
problem braku prawdziwych szablonów? :-p
Tak btw, to Java ma przeciążone operatory - np. operator + jest
przeciążony zarówno dla typu int jak i double (tak, to jest
przeciążony operator). Co ciekawe, jest on również przeciążony dla
typu String, który jest klasą, co by sugerowało, że można przeciążać
operatory dla klas. Ale nie cieszmy się, bo fakt, że operator + jest
przeciążony dla typu String wcale nie oznacza, że możemy mieć taki
operator również dla typu MyString. Ktoś mógłby powiedzieć, że klasa
String jest standardowa, więc ma specjalne prawa, ale jakoś klasy
Integer i spółka takich praw nie mają, jadąc na barana na przeciążonym
(tak!) operatorze typów podstawowych. Klasa BigDecimal też jest
standardowa, ale nie dość, że nie ma żadnych specjalnych praw, to na
żadnym baranie też nie pojedzie.
Co pies, to inaczej szczeka.
Poza tym, faktycznie, braki w Javie "nie powodują problemów".
> Wątpię
> aby w językach ogólnego(!) przeznaczenia był jakikolwiek
> sens intensywnego zastępowania wywołań funkcji operatorami,
> nie wspominając nawet o własnym definiowaniu.
Sens jest taki, żeby nie było takiego burdelu jak powyżej.
a = b + c;
i tyle. Tak to ma wyglądać (lub odpowiednio do ogólnych konwencji) w
języku ogólnego (właśnie!) przeznaczenia.
--
Maciej Sobczak * http://www.msobczak.com * http://www.inspirel.com
Następne wpisy z tego wątku
- 17.05.12 10:00 Roman W
- 17.05.12 10:09 Stachu 'Dozzie' K.
- 17.05.12 11:46
- 17.05.12 11:51
- 18.05.12 09:55 Maciej Sobczak
- 18.05.12 10:00 Roman W
- 18.05.12 12:36 KO
- 18.05.12 14:54
- 18.05.12 18:34
Najnowsze wątki z tej grupy
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
Najnowsze wątki
- 2024-11-16 Łódź => Frontend Engineer (Three.js) <=
- 2024-11-16 Warszawa => Expert Recruiter 360 <=
- 2024-11-16 Żerniki => Starszy specjalista ds. księgowości/ Samodzielny księgo
- 2024-11-16 Pruszków => Team Leader (PHP+React) <=
- 2024-11-16 Warszawa => Senior Cloud Consultant (AWS) <=
- 2024-11-16 Warszawa => Sitecore Developer <=
- 2024-11-16 Akta sprawy Kajetan Poznański
- 2024-11-16 Warszawa => OpenText ECM Specialist <=
- 2024-11-16 Warszawa => Account Manager - Sprzedaż Usług Rekrutacyjnych <=
- 2024-11-16 Warszawa => Account Manager - Usługi rekrutacyjne <=
- 2024-11-15 Google Play
- 2024-11-15 Szybcy i wściekli
- 2024-11-16 Opis produktu z Aliexpress
- 2024-11-15 No proszę, a śmialiście się z hindusów.
- 2024-11-14 Zewnętrzne napięcie referencyjne LM385 1,2V -> 100mV dla ICL7106, Metex M-3800