Kogato si s ediniq krak v assembler-a, goto ne ti pravi vpechatlenie,
ponezhe znaesh, che kompilatoryt bez drugo shte generira jump
instrukciq. V ezicite ot nivoto nad assembler obache, goto silno
zatrudnqva chetimostta za prostosmyrtnite.

Edinstveniqt sluchaj v C kogato goto e opravdan e ako iskash da
izlezesh navednyzh ot poveche ot edin vlozheni cikli. Dori v tozi
sluchaj puristite nastoqvat da si napravish otdelna funkciq, za da
izbegnesh izpolzvaneto na goto. Funkciqta mozhe i da e inline, ako
dyrzhish da spestish vikaneto.

Toq problem e reshen mnogo elegantno v Perl (a veroqtno i v drugi
ezici), kato e predvidena vyzmozhnostta za etiket na break (last)
taka, che tochno da mozhesh da ukazhesh ot koj cikyl iskash da
izlezesh.

No da oprostqva koda - ne. Da go pravi po-malyk kato source ili
binary - syshto ne. Kompilatorite ot godini veche sa dostatychno
inteligentni, za da ne se nalaga da gi ulesnqvash s goto.

Eto edna klasika ot 68-a godina (Dijkstra): http://www.acm.org/classics/oct95/

Prodylzhava da predizvikva polemiki :)

Petko


>Date: Thu, 11 Oct 2001 14:30:54 +0300
> Georgi Chorbadzhiyski <[EMAIL PROTECTED]> [EMAIL PROTECTED] Re: lug-bg: Kernel 
>2.4.11Reply-To: [EMAIL PROTECTED]
>
>Petko Boukov wrote:
>> 
>> Tochno VM ponastoqshtem e qbylkata na razdora, ponezhe Linus dopusna
>> generalni promeni syvsem kysno v stabilniq 2.4. Dokolkoto razbrah,
>> v momenta dazhe na Linus i na Alan v klonovete ima razlichni
>> implementacii na VM: ednata na Andrea Arcangely, a drugata - na Rik
>> van Rijl (maj ne se pishat tochno taka, ama nqmam vreme da gi
>> proverqvam). Vseki smqta, che negoviqt podhod e po-dobriqt i
>> po-stabilniqt.
>> 
>> A pyk po otnoshenie na koda, oshte ne moga da preodoleq shoka, sled
>> kato vidqh Alan Cox kolko goto-ta izpolzva v tcp/ip stack-a i v
>> ipc.
>
>goto e mnogo dobar operator kogato se izpolzva kakto triabva. Oprostiava
>koda i go pravi po optimalen. Tova che v niakoi "ezici za programirane"
>GOTO se izpolzva za shtialo i neshtialo izobshto ne namaliava poleznostta
>na operatora :) Ako triabva byrzo da izlezesh ot niakakyv loop i da zavurshish
>neshto po nai-logichniat nachin varshi chudesna rabota.



------------------------------------------------------------
--== Sent via Deja.com ==--
http://www.deja.com/
===========================================================================
A mail-list of Linux Users Group - Bulgaria (bulgarian linuxers)
http://www.linux-bulgaria.org/ Hosted by Internet Group Ltd. - Stara Zagora
            • ... Stanislav Lechev
        • ... Ivan Dimitrov
          • ... Teodor Georgiev
        • ... Stanislav Lechev
  • ... Boyan Krosnov
    • ... Teodor Georgiev
      • ... Ангел Вълков
  • ... Petko Boukov
    • ... Georgi Chorbadzhiyski
    • ... Ангел Вълков
  • Petko Boukov

Reply via email to