🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.programming
Article #216203

Re: POpularno?? j?zyk?w programowania ??

#216203
From: Maciej Sobczak
Date: Sun, 06 Oct 2019 21:21
70 lines
6456 bytes
> > No więc - skoro już poprawiliśmy tą naszą funkcję, to jaka jest wartość dodana z użycia kilku kolejnych kompilatorów?
> 
> Bardzo prosta. Twój kompilator w poprawnej funkcji dodawania przypadkiem 
> zrobił mnożenie kiedy x=15 i y=90.

To wychodzi w pokryciu kodu obiektowego.

> Shit happens.

Nie, nie happens.
Tzn. może są firmy, gdzie happens i się nie bada pokrycia (tak, tak, teraz ja sobie dorabiam, dla równowagi do Twoich teorii, że w Ariane 5 nie było testów), ale tam gdzie widzę, bada się i nie happens.

> Czasem to tylko mignie 
> szybciej diodą a czasem wyśle samolot w kierunku gruntowym.

Nie było przypadku, żeby samolot poleciał w kierunku gruntowym przez to, że użyto jednego kompilatora a nie trzech. Dlatego ten pomysł byłby potraktowany jako koszt bez wartości dodanej.

> A kod działa przypadkiem tylko dlatego że kompilator w jakimś miejscu 
> zamiast referencji użył wartości. W kodzie produkcyjnym użyje referencji

Zaraz, zaraz... Testowałeś nieprodukcyjny kod a produkcyjny były jakiś inny?
Tyle mądrości na temat weryfikacji a tu taki klops. Skup się.
 
> Aby zweryfikować narzędzia do weryfikacji.

O, tu, widzisz, poruszyłeś ciekawe zagadnienie.
Ale kwalifikację narzędzia robi się przed projektem, bo projekt zaczyna się mając już zatwierdzone narzędzia. I jeśli do tej kwalifikacji chcesz sobie użyć materiału testowego pochodzącego z różnych kompilatorów, to właściwie może to mieć sens (ale nie musi). Tylko że nadal nie ma sensu używać więcej niż jednego kompilatora do robienia tego właściwego projektu.

> > I tu jest cały trick. Kompilator nie jest celem ani centrum tego ćwiczenia.
> 
> Jest narzędziem które odpowiada na pytanie czy kod działa czy nie.

Kompilator? Nie, nie odpowiada na takie pytanie. Właściwie to mogłoby nie być żadnego kompilatora, można posadzić człowieka z zapasem kawy i herbatników i niech "kompiluje". I to nawet nie jest fikcja.

> Czasami odpowiada źle.

Nie pokazałeś niczego takiego.

> Nie. Wykazałeś że w jakiś warunkach Twój kod działa. A czy to te same 
> warunki kiedy będzie używany produkcyjnie?

I w jaki sposób trzy kompilatory mają coś tu zmienić? Ilość kompilatorów wpływa na to, jak bardzo zmieniają się warunki w użyciu produkcyjnym?

> Może wyjaśnie na przykładzie. Znam człowieka pracujacego dla poważnej 
> instytucji związanej z lotnictwem. Aby ich kod przeszedł certyfikat 
> pozwalający na stosowanie w samolotach musieli, poza wykazaniem 
> testowania we wszystkich odmianach, zarządzania jakością, weryfikacji 
> formalnej również to czy zweryfikowali narzędzia. Ponieważ smutni 
> panowie od certyfikowania nie są z kosmosu i znają realia to zapytali w 
> ILU różnych symulatorach potwierdzono działanie kodu i czy ich 
> producenci sami są certyfikowani do użycia w takiej branży.

Wszystko się zgadza.
Ale nie ma tu ani słowa o użyciu wielu kompilatorów.

I jeśli jesteśmy w temacie samolotów i smutnych panów - standardy lotnicze są tak napisane, że użycie wielu kompilatorów do kompilowania tego samego kodu w projekcie nie jest podstawą do dodatkowego uznania (tzw. certification credit) w czasie audytu certyfikacyjnego a weryfikacji kodu wynikowego nie robi się garścią kompilatorów, bo kod ma być jeden. Ten sam w testach, co na produkcji.

Dlatego ten pomysł nie ma zastosowania w projektach krytycznych, w szczególności w lotniczych. Prawie byłeś blisko w temacie kwalifikacji narzędzi (np. narzędzie do badania pokrycia kodu testami można próbować kwalifikować przy użyciu materiału testowego z jakiegoś zestawu kompilatorów, ale to i tak niewiele wnosi w konteście danego projektu, gdzie jest jeden kompilator), ale generalnie mylisz pojęcia.

No i fajnie, że znasz "człowieka pracujacego dla poważnej instytucji związanej z lotnictwem".

> PS. A zupałnie na marginesie wszelkiej certyfikacji. Odpalam mój kod pod 
> trzema kompilatorami.

Ja też - wtedy, gdy piszę biblioteki.

Ale w projekcie krytycznym używa się jednego kompilatora. I testuje się kod produkcyjny.

-- 
Maciej Sobczak * http://www.inspirel.com
Technical Details
Message-ID: <9cf56c80-be20-44e9-95b3-5d717943680d@googlegroups.com>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.samoylyk.net!weretis.net!feeder7.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!o24no3087042qtl.0!news-out.google.com!q23ni170qtl.1!nntp.google.com!o24no3087033qtl.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
References: <ZFueF.189972$Jh2.55867@fx39.am4> <b7cb88b6-e116-49ce-aa77-d9402b2bd021@googlegroups.com> <5d835054$0$525$65785112@news.neostrada.pl> <qm5o8c$6mr$1@news.icm.edu.pl> <5d867c27$0$17361$65785112@news.neostrada.pl> <qm5va9$c07$1@dont-email.me> <5d86b148$0$520$65785112@news.neostrada.pl> <qm7c3j$pl6$1@dont-email.me> <5d87968d$0$503$65785112@news.neostrada.pl> <qm875f$g8o$1@dont-email.me> <5d87b31a$0$522$65785112@news.neostrada.pl> <qm8e0j$s55$1@dont-email.me> <qmgven$som$1@z-news.wcss.wroc.pl> <f05b2868-1104-41ec-9932-5ab98957ebee@googlegroups.com> <qmnls7$tml$2@news.icm.edu.pl> <b5bf1d06-63aa-431d-9617-197defac80b3@googlegroups.com> <qmtap2$kfe$1@dont-email.me> <43e2df0d-44bc-46a6-8510-439c78ef7ba8@googlegroups.com> <qn5dj9$qh9$3@dont-email.me> <b22c77d4-eebc-460a-90a0-a17f23edafed@googlegroups.com> <qn82tb$4uq$1@dont-email.me> <0df5326a-fc06-4476-a3ef-b27e950305b3@googlegroups.com> <qnb1gg$68i$1@dont-email.me>

Show Full Headers
Complete Article Headers
X-Received: by 2002:a05:620a:1465:: with SMTP id j5mr20213882qkl.384.1570396914916;        Sun, 06 Oct 2019 14:21:54 -0700 (PDT)
X-Received: by 2002:a05:6214:146:: with SMTP id x6mr24659068qvs.232.1570396914623; Sun, 06 Oct 2019 14:21:54 -0700 (PDT)
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.samoylyk.net!weretis.net!feeder7.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!o24no3087042qtl.0!news-out.google.com!q23ni170qtl.1!nntp.google.com!o24no3087033qtl.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Sun, 6 Oct 2019 14:21:54 -0700 (PDT)
In-Reply-To: <qnb1gg$68i$1@dont-email.me>
Complaints-To: groups-abuse@google.com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=213.108.152.51; posting-account=bMuEOQoAAACUUr_ghL3RBIi5neBZ5w_S
NNTP-Posting-Host: 213.108.152.51
References: <ZFueF.189972$Jh2.55867@fx39.am4> <b7cb88b6-e116-49ce-aa77-d9402b2bd021@googlegroups.com> <5d835054$0$525$65785112@news.neostrada.pl> <qm5o8c$6mr$1@news.icm.edu.pl> <5d867c27$0$17361$65785112@news.neostrada.pl> <qm5va9$c07$1@dont-email.me> <5d86b148$0$520$65785112@news.neostrada.pl> <qm7c3j$pl6$1@dont-email.me> <5d87968d$0$503$65785112@news.neostrada.pl> <qm875f$g8o$1@dont-email.me> <5d87b31a$0$522$65785112@news.neostrada.pl> <qm8e0j$s55$1@dont-email.me> <qmgven$som$1@z-news.wcss.wroc.pl> <f05b2868-1104-41ec-9932-5ab98957ebee@googlegroups.com> <qmnls7$tml$2@news.icm.edu.pl> <b5bf1d06-63aa-431d-9617-197defac80b3@googlegroups.com> <qmtap2$kfe$1@dont-email.me> <43e2df0d-44bc-46a6-8510-439c78ef7ba8@googlegroups.com> <qn5dj9$qh9$3@dont-email.me> <b22c77d4-eebc-460a-90a0-a17f23edafed@googlegroups.com> <qn82tb$4uq$1@dont-email.me> <0df5326a-fc06-4476-a3ef-b27e950305b3@googlegroups.com> <qnb1gg$68i$1@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <9cf56c80-be20-44e9-95b3-5d717943680d@googlegroups.com>
Subject: Re: POpularno?? j?zyk?w programowania ??
From: Maciej Sobczak <see.my.homepage@gmail.com>
Injection-Date: Sun, 06 Oct 2019 21:21:54 +0000
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit