-
Data: 2011-08-17 14:36:28
Temat: Re: jaki wybrac jezyk?
Od: Michal Kleczek <k...@p...onet.pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 2011-08-17 15:39, Stachu 'Dozzie' K. wrote:
> On 2011-08-17, Michal Kleczek<k...@p...onet.pl> wrote:
>> On 2011-08-17 15:12, Stachu 'Dozzie' K. wrote:
>>> On 2011-08-17, Michal Kleczek<k...@p...onet.pl> wrote:
>>>>
>>>> W koncu nie wiem, czy chcesz miec kontrole statyczna, czy dynamiczna.
>>>
>>> Chcę statyczną, ale jak się nie da (bo Java jest typowana statycznie ale
>>> dynamicznie), to niech będzie *jakakolwiek*. A nie żeby mnie zaskakiwało
>>> że mimo wszystko do ArrayList<Integer> da się dodać Stringa.
>>>
>>
>> No przeciez sie nie da - tu dostaniesz blad kompilacji:
>>
>> void funkcja(ArrayList<Integer> lista) {
>> lista.add("string");
>> }
>
> No przecież pokazałem że się da.
Nie wydaje mi sie. Nie ma takiego jezyka, ktory przepusci rzutowanie typu:
List<Integer> l = (List<Integer>) cokolwiek;
i nastepnie wyrzuci blad przy:
l.add(new Integer(2));
To byloby zaprzeczenie idei rzutowania.
> Nie próbuj mi wmawiać że parę
> szczególnych przypadków przytoczonych przez ciebie wystarcza żeby mówić
> o statycznej kontroli typów w Javie.
Mysle, ze zebysmy mogli dalej sensownie dyskutowac, musialbys mi
powiedziec, co rozumiesz przez "statyczna kontrole typow".
>
> Przepraszam, ale dlaczego w Adzie się dało zrobić poprawnie silny system
> typów?
Nie dalo sie (sa operacje "unsafe").
> Dlaczego dało się w Haskellu i SML-u?
W Haskelu - unsafePerformIO
SMLa nie znam, ale jak czytalem to tez sa operacje "unsafe".
> Nie wyskakuj mi więc
> z pomysłem że rzutowanie jest ogólnie niebezpieczną operacją,
> niemożliwą do weryfikacji podczas kompilacji, bo nie jest.
>
Nie jestem specjalista, ale wydaje mi sie ze jednak ma do rzeczy tutaj:
http://en.wikipedia.org/wiki/Rice's_theorem
Moge sie jednak mylic.
Natomiast, jesli chcesz powiedziec, ze istnieja jezyki z mocniejszymi
systemami typow niz Java - to ja sie z tym calkowicie zgadzam.
--
Michal
Następne wpisy z tego wątku
- 17.08.11 14:38 Michal Kleczek
- 17.08.11 14:45 Michal Kleczek
- 17.08.11 14:50 Stachu 'Dozzie' K.
- 17.08.11 15:08 Jordan Szubert
- 17.08.11 15:11 Maciej Sobczak
- 17.08.11 15:29 Michal Kleczek
- 17.08.11 15:32 Michal Kleczek
- 17.08.11 19:57 Edek
- 17.08.11 20:58 m...@t...pl
- 17.08.11 21:17 Edek
- 17.08.11 21:56 m...@t...pl
- 17.08.11 21:59 Edek
- 17.08.11 22:49 Edek
- 18.08.11 00:42 m...@t...pl
- 18.08.11 13:34 Jordan Szubert
Najnowsze wątki z tej grupy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- 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??
Najnowsze wątki
- 2025-03-13 Raspberry Pi 3 Model B+
- 2025-03-13 Kuchenka elektryczna
- 2025-03-12 test
- 2025-03-13 własny ekran startowy
- 2025-03-13 Błonie => IT System Administrator <=
- 2025-03-13 Częstochowa => Manager ds. produktu <=
- 2025-03-13 Środa Wielkopolska => SAP FI/CO Internal Consultant <=
- 2025-03-13 Chiny-Kraków => Koordynator Produkcji / Przedstawiciel ds. rozwoju pr
- 2025-03-13 Warszawa => Analityk biznesowo-systemowy <=
- 2025-03-13 Warszawa => Business Systems Analyst <=
- 2025-03-13 Żerniki => NodeJS Developer <=
- 2025-03-13 Chiny-Kraków => Senior PHP Symfony Developer <=
- 2025-03-13 Kraków => Business Development Manager - Dział Sieci i Bezpieczeńst
- 2025-03-13 Kraków => Business Development Manager - Network and Network Security
- 2025-03-13 Warszawa => Konsultant ds. sprzedaży <=