summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/generic/tex-virtual-academy-pl/kuchnia/hist.html
blob: ba6846f61a5d849e79b166647d67758d00ec1c8b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-2">
<meta http-equiv="Content-language" content="pl">
<meta name="Author" content="W³odzimierz Macewicz">
<meta name="Keywords" content="historia texa, Wirtualna Akademia">
<title>Historia Programu TeX</title>
</head>
<body>

<h2> Krótka historia powstania TeX-a</h2>

<p>Donald Knuth pracowa³ nad swoim kilkutomowym dzie³em ....
Dzia³o siê to w epoce pocz±tków zastosowañ programów do sk³adu tekstów.
Po obejrzeniu wersji wstêpnej I tomu, z³o¿onej nowymi
narzêdziami, Donald Knuth przerwa³ pisanie
ksi±¿ki i zaj±³ siê projektowaniem programu wspomagaj±cego sk³ad.
W wyniku prac 
powsta³ program TeX -- s³u¿±cy do sk³adu i  program MeTaFont 
-- s³u¿±cy do projektowania fontów oraz piêæ ksi±¿ek, bêd±cych
obszern± dokumentacj± nowego systemu. Programy zosta³y
napisane w specjalnym, <b>przeno¶nym</b> jêzyku, równie¿
wymy¶lonym przez prof. Knutha. Jêzyk charakteryzuje siê tym, ¿e jednocze¶nie
tworzy siê program i dokument opisuj±cy algorytmy i jego fragmenty. 
Interpreterami tego jêzyka jest <code>WEAVE</code> i <code>TANGLE</code>

Po przetworzeniu napisanego tekstu programem <code>TANGLE</code> otrzymujemy 
program w <code>Pascal-u</code>, a po przetworzeniu programem 
<code>WEAVE</code>
ksi±¿kê, gotow± do przetworzenia programem TeX, nadaj±c± siê do druku.
Jest to niew±tpliwie k³opotliwy sposób pisania programów, ale pozwala
na oszczêdno¶ci w najbardziej kosztownej fazie testowania i pielêgnacji
programu.  

<p>Powsta³y programy <b>praktycznie bezb³êdne</b> (prof. Knuth
wyznaczy³ nagrodê za ka¿dy znaleziony b³±d w programach TeX, MeTafont,
Weave i Tangle), dostêpne na wszystkich komputerach (co najmniej 16-bitowych)
pracuj±cych pod dowolnym systemem operacyjnym. Program TeX 
zachowuje siê <b>jednakowo</b> na ka¿dym komputerze, sposób
obliczeñ jest niezale¿ny od dok³adno¶ci arytmometru.

<p>Bior±c pod uwagê z³o¿ono¶æ funkcji programu, jest on 
bardzo efektywny mimo przenaszalno¶ci kodu. Efektywno¶æ programu
nie wynika z mikrooszczêdno¶ci wynikaj±cych ze sztuczek kodowania,
ale z odpowiedniego zaprojektowania algorytmów i struktur danych.

<p>Od roku 1982 mia³y miejsce tylko dwie niewielkie modyfikacje
jego funkcji (prof. Knuth zadecydowa³, ¿e system nie bêdzie podlega³
dalszym modyfikacjom). Ostatni± wersj± jest 3.1415 (numery wersji
rosn± zgodnie z kolejnymi przybli¿eniami liczby pi), a ró¿nice wynikaj±
g³ównie z dostosowania do ró¿nych systemów wej¶cia/wyj¶cia, a nie
z poprawiania, czy tez z modyfikacji podstawowych funkcji programu TeX.


<p>Program TeX, zgodnie z wol± Donalda Knutha jest w³asno¶ci± ¶wiata;
tz. dozwolone jest wykorzystywanie dowolnych fragmentów kodu
programu w dowolnych celach, równie¿ komercyjnych. Mo¿na zrobiæ 
w³asn± implementacjê programu i sprzedawaæ j±.


<p align="right"> <img src="http://home.elka.pw.edu.pl/~macewicz/img/podpis.gif">


<hr>
<a href=../gify/wa.gif" hspace=10></a>
<a href=mailto:W.Macewicz@ia.pw.edu.pl><img src="../gify/mail.gif" hspace=10></a>
<a href=http://www.ia.pw.edu.pl/~wujek/index.html>W³odzimierz Macewicz</a> 
<hr>
Strona by³a <!-- *counter* --> razy czytana, <!-- *date* -->
</body>
</html>