[an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] (none) [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive] (none) [an error occurred while processing this directive] [an error occurred while processing this directive] [an error occurred while processing this directive][an error occurred while processing this directive]
 
[an error occurred while processing this directive] [an error occurred while processing this directive]
Skåne Sjælland Linux User Group - http://www.sslug.dk Home   Subscribe   Mail Archive   Forum   Calendar   Search
MhonArc Date: [Date Prev] [Date Index] [Date Next]   Thread: [Date Prev] [Thread Index] [Date Next]   MhonArc
 

Re: [PROGRAMMERING] C rutine til exec + pipe til og fra



> Jeg synes ikke at et ekstra flag
Tre flags. Og det er kun tre fordi overflødige fd's ikke bliver lukket
med det samme. Ellers er det 6 + en del flere if'er hist og pist.

> ekstra label. Det er bare to måder at gøre det samme på. Men se
> længere nede.
Ikke helt, flags bruger hukommelse og ekstra kode. Ser du programmet som
en tilstandsmaskine med N tilstande, så øger et ekstra flag tilstandsmængden
til 2*N (dog kan mange ekstra tilstande som regel trækes sammen).
Goto's som brugt her er derimod bare en tilstandsovergang.

> Opsplitning i funktioner ser jeg slet ikke som et trick, men som et mål i
> sig selv når der er så meget kode.
Ok, trick er ikke det rigtige ord, men ellers bliver vi nok ikke enige her,
hverken med målsætning eller udsagnet om, at det er meget kode.
Og så tvivler jeg da også på, at det er den sande målsetning, du fremfører
her: Du har splittet funktionen op, fordi du stort set er tvunget til det,
ikke fordi der er meget kode. Ellers havde du da også splittet do_parent
funktionen op. Ikke sandt? Havde vi det at gøre med en mindre funktion,
ville du også være nød til at splitte denne op. Så argumentet tæller
ligesom ikke rigtigt i vores sammenhæng.

> Men da goto ikke virker på tværs af 
> funktioner, må de jo afskaffes.
Jeg er enig med dig i, at hvis man endelig begynder på at splitte op på
grund af funktionslængden og samtidig akzepterer flags, så er det rigtigt,
at eliminere goto's.

> Ups, det har du ret i.
> Ups, ja.
> jeg undrer mig dog over at du ikke lukker de overflødige fd'er i child
> Og så vidt jeg kan se bliver flag_* sat til 1
Ups
Ups 

For mange ups'er til et simpelt problem => kode for kompliceret?

Anyway, der var da underholdende at se på de forskellige approaches
og nu kan folk da også vælge, hvad der passer best til deres æstetiske
fornemmelse.
Og så er det jo nok diskussioner som denne her, der har affødt idéen med
exception handling, som alle mig bekendte nyere sprog har taget op.

Hans-Christian Stadler



 
Home   Subscribe   Mail Archive   Index   Calendar   Search

 
 
Questions about the web-pages to <www_admin>. Last modified 2005-08-10, 22:43 CEST [an error occurred while processing this directive]
This page is maintained by [an error occurred while processing this directive]MHonArc [an error occurred while processing this directive] # [an error occurred while processing this directive] *