-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.P
OSTED!not-for-mail
From: Edek <e...@g...com>
Newsgroups: pl.comp.programming
Subject: Re: jaki wybrac jezyk?
Date: Wed, 17 Aug 2011 21:57:46 +0200
Organization: ATMAN - ATM S.A.
Lines: 47
Message-ID: <j2h6iu$9p4$1@node2.news.atman.pl>
References: <s...@j...net>
<5...@n...onet.pl>
NNTP-Posting-Host: static-81-219-28-205.devs.futuro.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: node2.news.atman.pl 1313611166 10020 81.219.28.205 (17 Aug 2011 19:59:26
GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Wed, 17 Aug 2011 19:59:26 +0000 (UTC)
User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.17) Gecko/20110428
Linux/3.1.0-15 Thunderbird/3.1.0
In-Reply-To: <5...@n...onet.pl>
Xref: news-archive.icm.edu.pl pl.comp.programming:191978
[ ukryj 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
- 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??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
Najnowsze wątki
- 2025-01-07 Aero2
- 2025-01-06 odbiornik GPS z kablem USB
- 2025-01-07 Oszczędzanie nie jest łatwe
- 2025-01-07 Warszawa => Java Developer <=
- 2025-01-07 Warszawa => IT Recruiter <=
- 2025-01-07 Katowice => Administrator IT - Wirtualizacja i Konteneryzacja <=
- 2025-01-07 Żerniki => Specjalista ds. Employer Brandingu <=
- 2025-01-06 Jeździ, skręca, hamuje
- 2025-01-06 Białystok => System Architect (Java background) <=
- 2025-01-06 Gliwice => Specjalista ds. public relations <=
- 2025-01-06 Białystok => Solution Architect (Java background) <=
- 2025-01-06 Zielona GĂłra => Konsultant WdroĹźeniowy Comarch XL/Optima (KsiÄgowoĹ
- 2025-01-06 Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- 2025-01-06 Ostrów Wielkopolski => Area Sales Manager OZE <=
- 2025-01-06 Do IO i innych elektrooszolomow, tu macie prawdziwe smrody