Odpověď na názor

Odpovídáte na názor ke článku Microsoft a C++11.

  • 4. 6. 2012 15:07

    Miloslav Ponkrác (neregistrovaný)

    Na novém standardu C++11 ještě ani pořádně nezaschnul inkoust a někdo očekává, že snad bude okamžitě a stoprocentně na všech kompilátorech použitelný.

    To je ta základní chyba. Samozřejmě, že jakýkoli programovací jazyk a jakýkoli standard se chová tak, že po vydání standardu je třeba několik let čekat, než bude vše na 100 %.

    Například GCC stále ještě neimplementuje bez chyby všechny featury programovacího jazyka C, normy z roku 1999 (http://gcc.gnu.org/c99status.html), a to jsme třináctý rok po vydání standardu. A to je, prosím pěkně, C99, nesrovnatelně jednodušší na implementaci než C++11.

    Já jsme s implementací C++11 velmi spokojen. Jede velmi rychle a už za pouhý rok po standardu je možné většinu nových featur používat. Pokud za takové čtyři roky, tedy v roce 2015, bude implementace C++11 na 100 % v základních prohlížečích, pak je vše naprosto v pořádku. Pokud dříve, bude to bleskově rychlá implementace C++11 v kompilátorech.

    Nevyčítal bych žádnému kompilátoru, že má chyby nebo nedostatky v některých partiích C++11, protože je stále velmi brzy a mají na to čas. Ta implementace není jednoduchá. A je jedno, jestli bude chybovat Microsoft, GCC, LLVM, Intel, nebo kdokoli.

    Je třeba vzít v úvahu, že na úpravy kompilátorů jsou velmi drsné nároky co se týká spolehlivosti. Chyba v kompilátoru znamená obtížně hledatelnou chybu v přeloženém programu. Kompilátory musejí především bez chyby přeložit dosavadní standardy. A zasahovat a měnit do kompilátoru se musí opatrně a s tím aby spolehlivost byla zachována.

    Je osobní problém každého, kdo nyní chce využívat C++11. Takoví lidé jsou early adopters a musejí zákonitě počítat s tím, že se budou prodírat chybami v implementacích.

    Není možné rozumně po kompilátorech (po žádném) nyní požadovat bezchybnou a stoprocentní implenetaci nového standardu.