[linux-l] Re: Mac und Linux
Rocco Rutte
pdmef at cs.tu-berlin.de
Mo Aug 7 10:50:41 CEST 2006
Hi,
* Volker Grabsch [06-08-04 09:06:52 +0200] wrote:
>Ich habe mir vor kurzem getopt_long() nochmal angesehen, weil ich es
>gebraucht habe. Im Manual von GNU-getopt steht klar drin, dass
>die Argumente permutiert werden (switches und switch-Argumente nach
>vorn).
Das Problem an der Sache ist, dass es POSIX-Vorgaben für getopt() gibt
und ich bei so trivialen Sachen einfach davon ausgehe, dass das
Verhalten Standardkonform ist.
In der GNU Manpage steht wohl, dass noch zwei weitere Modi von GNU
getopt() implementiert werden. Sorry, aber ich halte das für totales
Over-Engineering und für totalen Quatsch sowie Verschwendung von
Manpower auf nicht-existierende Probleme. Wenn jemand die Usability
erhöhen will, dann soll er ls(1) als Shell-Builtin implementieren und
kann dann darin die Argumente permutieren; also nur für Programme, von
denen man ganz genau weiss, dass das keinen Einfluss hat; bei anderen
weiss man es nicht.
Und wenn ich bei der Portierung von Software auf die glibc Rücksicht auf
getopt() nehmen muss (mit Environment-Variablen für getopt(), hallo!?,
oder auch mit einem '+' wovon ich nicht weiss wie andere
getopt()-Implementierungen darauf reagieren), dann kann ich von der
Verwendung nur abraten. Außerdem ist selber parsen auch noch schneller.
:)
Wenn eine C-Bibliothek Standards erweitert, dann bitte mit anderen
Funktionsnamen, damit die Standards so genau wie möglich implementiert
werden. Und: an den Stellen, an denen es sich lohnt. Bei neuen Methoden
ist das was anderes, da können sich die Leute von mir aus austoben.
bye, Rocco
--
:wq!
Mehr Informationen über die Mailingliste linux-l