Cytat:
Napisany przez Berion
Wszyscy mi tak m***243;wi***261;, tylko ni cholery nie wiem dlaczego? Jest jaka***347; lepsza alternatywa? 
|
Programy w kt***243;rych u***380;yto instrukcji goto s***261; nieweryfikowalne formalnie. Gdy masz zwyk***322;e p***281;tle mo***380;na np. policzy***263; niezmiennik p***281;tli.
Nieformalnie te***380; jest gorzej - du***380;o gorsza czytelno***347;***263;. Pami***281;taj ***380;e z za***322;o***380;enia oprogramowania nie pisze jedna osoba. Natomiast je***380;eli chodzi o optymalno***347;***263; to dobre zrobienie goto jest bardziej efektywne od zwyk***322;ych p***281;tli, ale trudno jest zrobi***263; dobre i przemy***347;lane labele i instrukcje goto, cho***263; mo***380;na. Tak jest np. w niekt***243;rych fragmentach kodu w j***261;drze linuxa (albo by***322;o, przynajmniej w 2.4).
Cytat:
Napisany przez sobrus
Z teoretycznego punktu widzenia dawno jest udowodnione ***380;e wszystko da si***281; napisa***263; trzema typami instrukcji - sekwencji ( ; ), iteracji (while) i selekcji (if). Reszta to tylko dodatki.
|
Hehehe. No nie do ko***324;ca, a raczej nie w t***261; stron***281;. Prawda wygl***261;da tak ***380;e np. taki while jest t***322;umaczony przez kompilator na goto

goto jest instukcj***261; procesora, while to "lukier syntaktyczny", ale taki do***347;***263; estetycznie i funkcjonalnie niezb***281;dny.
p***281;tle i ify s***261; t***322;umaczone na test rekord***243;w (inst. procesora) i odpowiedni skok do odpowiedniej etykiety (inst. procesora).