Recenzje o książkach
David Harel — Algorithmics. The Spirit of Computing (Addison–Wesley 1987, 425 ss.)
Jesienią ubiegłego roku uczestniczyłem w niewielkiej konferencji naukowej, na którą przybyło wyjątkowo kompletne grono twórców naukowych podstaw programowania. Wieczorami, w przestronnej bibliotece zamku Pont d’Oye, chroniąc się przed ciągnącą zewsząd wilgocią ardeńskiego listopada przy kominku, na którym żywym ogniem płonęły grube polana, uczestnicy konferencji rozmawiali o różnych ciekawych wydarzeniach kończącego się roku. Tematem, który powracał bodajże najczęściej, była książka, którą mam przyjemność recenzować. Piszę o tym dlatego, że doprawdy nieczęsto zdarzało się, by to zaiste wyśmienite grono było tak jednomyślne w ocenie cudzego dzieła, zwłaszcza że opinia była nad wyraz pozytywna. Ale bo i książka jest wyjątkowa.
W dzisiejszych czasach telewizji i video aż trudno uwierzyć, że ktoś zechce poświęcić czas na przygotowanie radiowych pogadanek popularnonaukowych. A jeszcze z informatyki… Taki właśnie jest rodowód tej książki. Jej pierwszą edycją był cykl wykładów radiowego uniwersytetu. Oczywiście, w trakcie przygotowywania wersji pisanej autor wzbogacił materiał o (znakomite zresztą!) ilustracje; pojawiły się też wzory i kilka tablic liczbowych. W swej obecnej postaci książka nie mogłaby już być czytana przez radio. A jednak jej pochodzenie jest widoczne na każdej stronie, w każdym akapicie. W tej książce ważny jest tekst; słowo odgrywa główną rolę.
To jest książka do czytania. A czy warto ją przetłumaczyć na język polski? Tak. Przekładać, koniecznie przekładać (tylko dobrze!).
Autor, wybitny informatyk młodszo–średniego pokolenia (ur. 1950), zauważa, że na rynku księgarskim nie brak doskonałych książek o różnych (a może nawet wszystkich) technicznych aspektach informatyki: o komputerach, językach i systemach programowania, algorytmach na to i tamto, sposobach rozwiązywania tych czy innych zadań. Większość tych książek dezaktualizuje się lub przynajmniej wymaga uzupełnień w tempie wyznaczanym nadzwyczaj bujnym rozwojem środków technicznych i metod informatyki. To natomiast, co stanowi sedno informatyki — wiedza o algorytmach, o algorytmicznym postępowaniu, nie rozwija się tak szybko, jak szybko zmieniają się generacje sprzętu i powstają nowe języki programowania. I, zauważa Harel, gdy każda inna dyscyplina wiedzy: fizyka, biologia, a nawet filozofia, ma przystępnie napisane książki eksponujące to, co stanowi trwałe jądro, wkład danej dyscypliny do kanonu edukacji człowieka wykształconego, informatyka jest w takie pozycje nader uboga. I rzeczywiście, na rynku nie tylko polskim, lecz także światowym brak pozycji wydawniczych, które z czystym sumieniem można by polecić inteligentnemu niespecjaliście — fizykowi, geografowi, historykowi — przeczytaj, a dowiesz się, czy jest informatyka, jakie problemy rozwiązuje, jak wzbogaca ludzką wiedzę, co stanowi o jej znaczeniu, a co — o jej granicach. Tę lukę zamierzył wypełnić David Harel i postawione sobie zadanie wykonał świetnie.
Poczynając od wprowadzenia do tematyki (co to jest algorytm, co to są struktury danych, jak algorytmy wyrażamy w językach programowania, czym się różnią między sobą najważniejsze klasy i przykłady języków programowania), przez zarysowanie głównego tematu — złożoności obliczeniowej i pamięciowej, do klasyfikacji problemów pod względem złożoności i do znakomitego (w wielu miejscach — twórczo oryginalnego) wykładu hierarchii problemów i algorytmów, autor prowadzi wykład żywy, dowcipny, zawsze poprawny, a nierzadko — odkrywczy. A przy tym znalazło się w tej książce miejsce na wszystkie istotne nowinki: są w niej systoliki, kryptografia z użyciem publicznych kluczy RSA, sztuczna inteligencja, niedeterministyczne maszyny Turinga i problematyka procesów współbieżnych (trudno o lepszą ekspozycję, gdy autorowi patrzyli na ręce tacy doradcy, jak C. A. R. Hoare, M. Ben–Ari, A. Pnuelli i S. Ullman!). Dostaje więc czytelnik fascynujący przegląd tematyki informatycznej, wyłożony modo sistematico przez specjalistę dla niespecjalistów. Kto wytrwale przeczyta — będzie o informatyce wiedział sporo, kto przynajmniej zajrzy — będzie miał czym imponować nie tylko w kawiarni, lecz także na seminariach.
Władysław M. Turski
Od Redakcji
Z największą przyjemnością informujemy, że trudne, ponad roczne pertraktacje z prawydawcą o przetłumaczenie powyższej książki, które wytrwale prowadziły Wydawnictwa Naukowo–Techniczne, zostały w sierpniu zakończone. Możemy się więc spodziewać polskiego przekładu tej fascynującej pozycji światowej literatury.