-
Data: 2011-08-17 19:57:46
Temat: Re: jaki wybrac jezyk?
Od: Edek <e...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 08/17/2011 04:29 PM, m...@t...pl wrote:
>
>> Tylko że nie wykryją wszystkiego, bo 1) najpierw funkcja się musi
>> uruchomić i 2) jak już się uruchomi, to musi zajść sytuacja że funkcja
>> dostała niezgodny typ. To w języku dynamicznym może zależec od ścieżki,
>> którą pójdzie program. Trochę do dupy twój pomysł z zastępowaniem
>> statycznego typowania testami.
> Wniosek jest prosty, ani statyczne typowanie, ani testy automatycznie
> generowane w runtimie nie zastępują uważności (jest takie słowo?)
> programisty. Tyle że jak w C++ statycznie zadeklaruje tablicę i dojdzie
> do przepełnienia zakresów, to program może długo działać bez wyraźnych
> objawów tego przepełnienia. Oczywiście w C++ można tablice tworzyć
> tylko przez new i jeszcze można zaimplementować testy zakresów. Tyle
> że w takim przypadku składnia Javy wydaje się przyjemniejsza.
Trafiłeś jak nie wiem co: napisz w Javie v1 * v2 gdzie v1 i v2 to
wektory, piewrszy przykład z setki możliwych; vector[index] += 3 drugi
(zamiast myJavaVektor.set(index, myJavaVector.get(index) + 3)).
Co ma new do sprawdzania zakresów. Można stworzyć klasę Tablica,
która ma stały rozmiar i sprawdzi zakresy, compile time albo runtime
wg potrzeb i nie używa new.
>
> Apropo testów przytoczę jeden z moich przypadków który chyba daje
> dużo do myślenia. Kiedyś wprowadziłem kilka poprawek do generatora
> posunięć w szachach. Pech chciał że miałem ważną robotę i nad
> szachami nie mogłem dalej pracować. Niemniej generator posunięć był
> kompletny i stał wolny komputer z sześcioma rdzeniami. Odpaliłem
> walidacje krzyżową dwóch programów na tych sześciu rdzeniach.
> Zgromadziłem mnóstwo gier, gry zapisałem do plików, programy
> wybierały losowo grę i przeszukiwały drzewo gry na określoną głębokość.
> Taki test ma nawet swoją nazwę, zwie się testem perft. No i
> co to daje do myślenia? Sytuacja w której dwa programy dały
> inny wynik dla tych samych danych wejściowych pojawiła się
> pierwszy raz dopiero po dwóch tygodniach ciągłych obliczeń na
> tych sześciu rdzeniach. Przez dwa tygodnie nie pojawiła się
> ani razu.
>
Faktycznie, daje do myślenia. Ja np. myślę, że valgrind nie wymagałby
dwóch tygodni, a byłby wart więcej niż te testy (które można
też zrobić, ale jak rozumiem wynik wskazuje na zwykły UB). Ten test
chyba nie ma nazwy, i valgrind niestety używa tylko jednego rdzenia.
Edek
Następne wpisy z tego wątku
- 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
- 19.08.11 09:28 Andrzej Jarzabek
- 19.08.11 11:01 Michal Kleczek
- 19.08.11 11:07 b...@n...pl
- 19.08.11 20:05 Zbigniew Malec
- 19.08.11 20:06 Zbigniew Malec
- 19.08.11 21:47 m...@t...pl
- 20.08.11 06:17 p...@p...onet.pl
- 24.08.11 09:45 Michoo
Najnowsze wątki z tej grupy
- 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??
- 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
Najnowsze wątki
- 2024-11-29 Dławik CM
- 2024-11-29 [OT] Lewe oprogramowanie
- 2024-11-29 Błonie => Sales Specialist <=
- 2024-11-29 Warszawa => IT Expert (Network Systems area) <=
- 2024-11-29 Warszawa => Ekspert IT (obszar systemów sieciowych) <=
- 2024-11-29 Warszawa => Head of International Freight Forwarding Department <=
- 2024-11-29 Białystok => Inżynier Serwisu Sprzętu Medycznego <=
- 2024-11-29 Pómpy ciepła darmo rozdajoo
- 2024-11-29 Białystok => Application Security Engineer <=
- 2024-11-29 Białystok => Programista Full Stack (.Net Core) <=
- 2024-11-29 Gdańsk => Software .Net Developer <=
- 2024-11-29 Wrocław => Key Account Manager <=
- 2024-11-29 Gdańsk => Specjalista ds. Sprzedaży <=
- 2024-11-29 Chrzanów => Specjalista ds. public relations <=
- 2024-11-27 Re: UseGalileo -- PRODUKTY I APLIKACJE UŻYWAJĄ JUŻ DZIŚ SYSTEMU GALILEO