Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > pl.comp.programming > #32541
| From | heby <heby@poczta.onet.pl> |
|---|---|
| Newsgroups | pl.comp.programming |
| Subject | Re: Ada Tutorial - w Instytucie Lotnictwa |
| Date | 2019-05-08 19:51 +0200 |
| Organization | A noiseless patient Spider |
| Message-ID | <qav4vb$87q$1@dont-email.me> (permalink) |
| References | <c1760262-b4a3-44fe-a99e-2fa16be86820@googlegroups.com> <btKtE.25850$wd2.16727@fx24.fr7> <9537dd39-0164-41a6-803b-393b77b4a701@googlegroups.com> <qasr5t$7i2$1@dont-email.me> <0eb77d44-3b22-41cb-8339-2346fe0b6c4d@googlegroups.com> |
On 08/05/2019 15:32, Wojciech Muła wrote: > Ale łapanie wyjątku to jest połowiczne rozwiązanie problemu. W szczególności, > jeśli wyjątek może pójść w dowolnym miejscu kodu (w tym przykładzie jest co > najmniej 13 miejsc, skąd może coś polecieć), to jaki będzie stan obiektu na > rzecz którego wołano metodę? Taki w jakim paradygmacie napisałeś kod. Mogłeś napisać pure function, mogłeś napisać kod z oparciem o transakcje z RAII, mogłeś totalnie sp... i napisać kod bazujacy na sideeffectach globalnych. Przecież jest wybór i akurat C++ pozwala napisać kod cholernie bezpiecznie i cholernie niebezpiecznie na raz. Ba, lisp też i ada też. To się załatwia code review i kilkoma developerami w zespole którzy potrafią zrozumieć na pisać kod aby nie trzeba było go debugować "endlessly" a to czy to C++ nie jest jakoś specjalnie istotne bo każdy język jest Turing-complete wiec poziom spieprzenia można osiągnąć identyczny. Przedstawiona funkcja jest generyczna. Jeśli by ta funkcja miała dodatkowo zajmować się ogarnianiem stanu swoich argumentów wejściowych i łapaniem bilionów detalicznych exceptionów a nastepnie szukaniem w szklanej kuli co z nimi zrobić to niestety ale taki programista nie ma racji bytu w dowolnej branży bo to najzwyczajniej spieprzony kod jest i to w najgorszy możliwy sposób. > Czy np. taki obiekt można bezpiecznie używać > dalej (stan wewnętrzny pozostał spójny)? Nigdy tego nie wiesz. Ale AKURAT ten znienawidzony C++ ma całkiem przyzwoite metody ograniczania działania sideeefectów jak scope i RAII. Po ich uzyciu jestem w stanie kontrolować sideeefecty znacząco wygodniej niż w innych językach imperatywnych, w sytuacjach krytycznych. Tylko że można też pisać kod funkcyjnie i tego nie robić. Masz wybór. No tak, zapomniałem że standarny produkcji automatyki do dildo zabraniają używania RAII, pętli while, tabulacji i nieparzystych wartości inta. Ariane pokazało że wybranie Ady nie powoduje że ludzie piszą kod bezpiecznie, dalej pisali w asemblerze. Nie wybór języka jest istotny tylko programisty. Wybrali hackerów, mają kupę a nie bezpieczny kod bez względu na koszerność języka. > Albo chociaż wywołać destruktor? Zawsze wywoła destruktor, *ZAWSZE* za wyjątkiem przypadku buga w kompilatorze. Chyba że lubisz longjmp. Widziałem już w "krytycznie bezpiecznym kodzie" wiec idiotów nie brakuje. > A co jeśli wyjątek leci z miejsca, o którym wierzyłeś, że nigdy nie poleci > i jednak dostajesz terminate? To wykrywam to w unit testach i poprawiam buga. Ostatecznie ktos umiera bo mu rozrusznik nie zadziałał. Boeing nie ma z tym dzisiaj jak widać problemu, Toyota nie miała ze swoim pedłem gazu itd itp. Najzwyczajniej nie da się ogarnąć systemu mającego kilka tyś lini kodu formalnie a pojedyncze przypadki kiedy się to udało, jak L4, są raczej potwierdzeniem że wymaga to nadludzkiego wysiłku. A zakładanie że pisze się kod bez bugów jest absurdem. Jesteśmy zbudowani z białka i nic na to nie poradzimy choć potrafimy to znacząco poprawiać używając inżynierii (o)programowania znanej od lat co najmniej 60. Ani Toyota ani Ariane nie są przykładem używania tych technik bo w obu wypadkach można było je zasymulować wcześniej invitro. A co sie stanie jak w ten kod trafi meteoryt z Neptuna? Jesteś na to przygotowany?
Back to pl.comp.programming | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Ada Tutorial - w Instytucie Lotnictwa Maciej Sobczak <see.my.homepage@gmail.com> - 2019-04-17 10:41 -0700
Re: Ada Tutorial - w Instytucie Lotnictwa Szyk Cech <szykcech@spoko.pl> - 2019-04-17 20:43 +0200
Re: Ada Tutorial - w Instytucie Lotnictwa Maciej Sobczak <see.my.homepage@gmail.com> - 2019-04-18 06:01 -0700
Re: Ada Tutorial - w Instytucie Lotnictwa Sebastian Biały <heby@poczta.onet.pl> - 2019-04-19 19:24 +0200
Re: Ada Tutorial - w Instytucie Lotnictwa Szyk Cech <szykcech@spoko.pl> - 2019-04-20 13:46 +0200
Re: Ada Tutorial - w Instytucie Lotnictwa Sebastian Biały <heby@poczta.onet.pl> - 2019-04-20 15:02 +0200
Re: Ada Tutorial - w Instytucie Lotnictwa Szyk Cech <szykcech@spoko.pl> - 2019-04-20 16:20 +0200
Re: Ada Tutorial - w Instytucie Lotnictwa slawek <x.y@org.org> - 2019-04-23 21:27 +0200
Re: Ada Tutorial - w Instytucie Lotnictwa godek.maciek@gmail.com - 2019-04-24 00:11 -0700
Re: Ada Tutorial - w Instytucie Lotnictwa Borneq <borneq@antyspam.hidden.pl> - 2019-08-04 18:11 +0200
Re: Ada Tutorial - w Instytucie Lotnictwa Szyk Cech <szykcech@spoko.pl> - 2019-04-20 13:43 +0200
Re: Ada Tutorial - w Instytucie Lotnictwa Maciej Sobczak <see.my.homepage@gmail.com> - 2019-04-22 11:51 -0700
Re: Ada Tutorial - w Instytucie Lotnictwa Wojciech Muła <wojtek.mula@gmail.com> - 2019-05-07 12:15 -0700
Re: Ada Tutorial - w Instytucie Lotnictwa Szyk Cech <szykcech@spoko.pl> - 2019-05-07 21:38 +0200
Re: Ada Tutorial - w Instytucie Lotnictwa heby <heby@poczta.onet.pl> - 2019-05-07 22:52 +0200
Re: Ada Tutorial - w Instytucie Lotnictwa Maciej Sobczak <see.my.homepage@gmail.com> - 2019-05-07 22:54 -0700
Re: Ada Tutorial - w Instytucie Lotnictwa heby <heby@poczta.onet.pl> - 2019-05-08 19:31 +0200
Re: Ada Tutorial - w Instytucie Lotnictwa Maciej Sobczak <see.my.homepage@gmail.com> - 2019-05-08 23:04 -0700
Re: Ada Tutorial - w Instytucie Lotnictwa heby <heby@poczta.onet.pl> - 2019-05-09 18:19 +0200
Re: Ada Tutorial - w Instytucie Lotnictwa Maciej Sobczak <see.my.homepage@gmail.com> - 2019-05-09 23:03 -0700
Re: Ada Tutorial - w Instytucie Lotnictwa heby <heby@poczta.onet.pl> - 2019-05-10 20:33 +0200
Re: Ada Tutorial - w Instytucie Lotnictwa Maciej Sobczak <see.my.homepage@gmail.com> - 2019-05-12 23:29 -0700
Re: Ada Tutorial - w Instytucie Lotnictwa Wojciech Muła <wojtek.mula@gmail.com> - 2019-05-08 06:32 -0700
Re: Ada Tutorial - w Instytucie Lotnictwa heby <heby@poczta.onet.pl> - 2019-05-08 19:51 +0200
Re: Ada Tutorial - w Instytucie Lotnictwa Maciej Sobczak <see.my.homepage@gmail.com> - 2019-05-08 23:21 -0700
Re: Ada Tutorial - w Instytucie Lotnictwa heby <heby@poczta.onet.pl> - 2019-05-09 18:34 +0200
Re: Ada Tutorial - w Instytucie Lotnictwa Maciej Sobczak <see.my.homepage@gmail.com> - 2019-05-09 23:21 -0700
Re: Ada Tutorial - w Instytucie Lotnictwa heby <heby@poczta.onet.pl> - 2019-05-10 21:00 +0200
Re: Ada Tutorial - w Instytucie Lotnictwa Maciej Sobczak <see.my.homepage@gmail.com> - 2019-05-12 23:40 -0700
Re: Ada Tutorial - w Instytucie Lotnictwa AK <nobody@nowhere.net> - 2019-05-13 09:27 +0200
Re: Ada Tutorial - w Instytucie Lotnictwa godek.maciek@gmail.com - 2019-05-13 03:05 -0700
Re: Ada Tutorial - w Instytucie Lotnictwa AK <nobody@nowhere.net> - 2019-05-14 00:53 +0200
Re: Ada Tutorial - w Instytucie Lotnictwa godek.maciek@gmail.com - 2019-05-13 23:51 -0700
Re: Ada Tutorial - w Instytucie Lotnictwa AK <nobody@nowhere.net> - 2019-05-15 21:25 +0200
Re: Ada Tutorial - w Instytucie Lotnictwa godek.maciek@gmail.com - 2019-05-15 23:55 -0700
Re: Ada Tutorial - w Instytucie Lotnictwa Maciej Sobczak <see.my.homepage@gmail.com> - 2019-05-14 00:55 -0700
Re: Ada Tutorial - w Instytucie Lotnictwa Adam M <amorawski@magna-power.com> - 2019-05-14 06:25 -0700
Re: Ada Tutorial - w Instytucie Lotnictwa Maciej Sobczak <see.my.homepage@gmail.com> - 2019-05-14 23:09 -0700
Re: Ada Tutorial - w Instytucie Lotnictwa Roman Tyczka <noemail@because.no> - 2019-05-09 11:32 +0200
Re: Ada Tutorial - w Instytucie Lotnictwa Wojciech Muła <wojtek.mula@gmail.com> - 2019-05-09 10:29 -0700
csiph-web