cas a 32-bit platformy

Ing. Miloslav Ponkrác postovni.holub na atlas.cz
Středa Červen 7 17:13:05 CEST 2000


PN>Ano; ne vzdy vsak pochazeji od spatnych programatoru. Mnoho C
PN>kodu je v pre-ANSI C. (Na nekterych soucasnych dinosaurich
PN>unixech stale mate cc, ktere je Kernigham-Ritchie a ne ANSI.)
PN>Mnoho knihoven (a headeru) je pre-POSIX. (Mnoho C++ je pre-ISO.)

Problém je, že podle mého standard C++ dělal dost vylomeniny. Jednak
jednotlivé ISO verze v mnoha případech nejsou zpětně komatibilní, což
poznáte nejvíce, pokud používáte nějaký starší překladač C++. A jednak
spousta věcí byla v C++ standartizována až v době, kdy už to výrobci
překladačů museli nějak řešit svými vlastními standardy.

PN>I kdyz se programator snazi sebevic, jde to jen odnekud nekam.

Souhlasím. Chybí skutečně dobré knihovny, a to v mnoha jazycích. Je tu
příliš mnoha nekompatibilit na všech stranách. Je to tak trochu boj s
větrnými mlýny.

S knihovnami je strašný problém. Obecně knihovny k programovacím jazykům
jsou dle mého v příšerném stavu. Málokdy je knihovna navržena dostatečně
obecně a použitelně zároveň.

PN>Schvalne, pouzivate pro rozdil pointeru ptrdiff_t nebo int? :-)

Jasně, že int. Ale vím o lepším příkladě. Schválně, jak obecně přenositelně
napíšete třeba v C, že chcete celočíselnou proměnnou určité délky, třeba
16-bitovou, nebo 32-bitovou, případně 64-bitovou? Myslím tak, aby to bez
problémů pracovalo na všech lepších C překladačích, a na 16, 32 a
64-bitových OS?
A přitom je to často základní potřebná věc.

Miloslav Ponkrác




Další informace o konferenci Linux