Soubor programů vznikal postupně, podle mé potřeby a možností. Zařazeny jsou i podobně užívané programy mých spolupracovníků, kteří souhlasí s jejich šířením dle GNU licence [2]. Vycházeli jsme přitom hlavně z knížky Zdeňka Pokorného [4] (který sám čerpal z knihy Jana Meeuse [5]) a ze statí Jana Vondráka v knížce [6].
Jak se programy stávaly složitější, případně jak algoritmy
starších programů autor zapomínal, vznikala potřeba je nějak
dokumentovat, tj. alespoň opatřit poznámkami. Přesto jsou
poznámky v programech většinou zcela nedostatečné, a programy
jsou velmi daleko od ideálu literate programming, jak jej
formuloval a realizuje Donald Knuth (autor programů WEB
,
TEX, aj. [14]). Dále byly programy doplněny podle dobrých
vzorů, např. programů systémů MS-DOS a UNIX, které při některém
způsobu spuštění vysvětlí svůj účel a použití. Popis ovládání
programu, který lze zobrazit při jeho spouštění, je obsažen
na začátku textu programu.
Při vývoji programů jsem našel v Turbo Pascalu firmy Borland dvě
zvláštnosti. První se týká různých způsobů zaokrouhlování.
Pascal sám zaokrouhluje reálná čísla končicí na .5 vždy na větší
absolutní hodnotu, zatímco numerický koprocesor na sudé číslo.
Já jsem (zatím jen v některých programech) použil třetí možnost,
totiž zaokrouhlovat vždy nahoru, na větší hodnotu (funkcí
RoundUp). Druhá zvláštnost se týká formátování. S koprocesorem
se reálná čísla při neformátovaném výstupu tváří jako typu
,,extended``, t.j. například se čtyřmi ciframi v exponentu.
Některé formátovací procedury na začátku jednotky str_num
různý výstup programů při různém hardwaru omezují.
S málo výjimkami jsou programy čistě anglické. Hlavní důvod je
ten, že autor odmítá používat ,,cestinu``, a že i když má
uživatel ve svém počítači spuštěno české zobrazování, může to
být v různých kódech. Ojedinělé české programy lze ale snadno
překódovat pomocí programu CS_Conv
. Čistě anglické
programy mají i výhodu čitelnosti, kdy se nemíchá anglický
programovací jazyk s jiným jazykem v označení proměnných
a podprogramů a v komentářích. A anglicky čte, i když možná
s trochou námahy, jistě už každý potenciální uživatel těchto
programů.
Pokud nějaký program zdokonalíte, a předpokládáte, že by se vaše
úprava mohla hodit i jiným, klidně jim poskytněte balík
pas_jh.zip
i se svým doplňkem. Uvítám, když upravený
program pošlete i mně. Rád zahodím program původní a pod stejným
názvem zařadím do své sady místo něj program váš.
Jak vyplývá z licence [2], jde o programy, které si může každý sám upravovat a jejich části používat ve vlastních programech. Pokud takové nové programy jsou šířeny dál, musejí ale také zůstat v kategorii svobodných programů.
Pokud se v programech jen upravuje seznam adresářů, kde se
hledají potřebné datové soubory, nebo když se změní pětice
hodnot pro místo, odkud se pozoruje (ty jsou uvedeny na začátku
jednotky solar_ut
), může zůstat zachován název programu
a nemusí být nikde vidět poznámka o takové změně. Totéž platí,
když do programu byly doplněny jen vysvětlivky (to může být
někdy potřeba, aby ovládání programu bylo jasné i jiným než
autorovi).