Od sanskrytu do programu

Z Arturem Karpem z Zakładu Azji Południowej w Instytucie Orientalistycznym Uniwersytetu Warszawskiego rozmawia Andrzej Gontarz.

Z Arturem Karpem z Zakładu Azji Południowej w Instytucie Orientalistycznym Uniwersytetu Warszawskiego rozmawia Andrzej Gontarz.

W ostatnich latach można zauważyć na świecie, zwłaszcza w Stanach Zjednoczonych, wzrost zainteresowania usługami informatyków z Indii. Co decyduje o tak wysokich notowaniach tamtejszych programistów?

Umiejętności Hindusów wynikają w dużej mierze z przesłanek kulturowych. Komunikacja z komputerem wymaga posługiwania się sztucznym językiem. Tymczasem pierwszy sztuczny język to gramatyka sanskrytu autorstwa Paniniego. Jej zasady ujęte zostały w Ośmioksiągu (Asztadhjaji) na przełomie VI i V wieku p.n.e. W wykształceniu braminów jest to do dnia dzisiejszego jeden z podstawowych tekstów. Muszą znać tę gramatykę, powinni umieć się nią posługiwać.

Legenda mówi, że Panini miał problemy z opanowaniem gramatyki sanskryckiej.

Nie mógł przede wszystkim nauczyć się wyjątków. Modlił się do Siwy o pomoc. Bóg dał mu wgląd w strukturę języka, którą Panini potem opisał. Pierwszy europejski przekład dzieła Paniniego powstał w połowie XIX w. i wywarł wyraźny wpływ na umocnienie się w kulturze europejskiej myślenia w kategoriach struktury. Europejskie gramatyki strukturalne powstały dopiero w XX w.

Na czym polega wyjątkowość tej gramatyki?

Artur Karp

Artur Karp

Tradycyjne gramatyki łaciny czy greki zawierają olbrzymią liczbę wyjątków, które trzeba opanować pamięciowo. Panini potraktował sprawę inaczej - usystematyzował wszystkie reguły funkcjonujące w obrębie języka. Wychodząc od reguł najniższego rzędu, przez reguły wyższego rzędu, reguły łączliwości poziomej i pionowej, do metareguł i potem znowu schodząc w dół, stworzył spójny system. W ten sposób zapełnił wszystkie miejsca, które były pojedynczymi przypadkami. To, co dla nas jest wyjątkiem, tam jest ilustracją reguły. Całkowitym novum było również przypisanie wszystkim kolejnym regułom arbitralnie dobranych symboli (głosek i ich kombinacji) o raz i na zawsze ustalonym znaczeniu.

Gramatyka ta jest skonstruowana niczym algebra. Składających się na nią kilku tysięcy reguł zaczynają się uczyć już dzieci.

Ta sytuacja z całą pewnością umożliwia otwarcie umysłu na sprawne posługiwanie się językiem komputerowym.

Jakie jeszcze elementy tradycyjnego wykształcenia indyjskiego czy umysłowości hinduskiej mogą sprzyjać rozwojowi umiejętności programistycznych?

Hindusi wcześnie rozwinęli umiejętności tworzenia różnorodnych klasyfikacji, które trzeba opanować podczas tradycyjnej edukacji. Wcześnie też wytworzyli aparat pojęciowy i logiczny pomocny w kontroli jakości wypowiadanych zdań. Systemy klasyfikacyjne są po dziś dzień fundamentem hinduskiej filozofii i wiedzy o języku. Hindus S. R. Ranganathan w latach 30. XX wieku stworzył podstawy systemu uniwersalnej klasyfikacji dziesiętnej, którą obecnie posługują się biblioteki na całym świecie przy katalogowaniu swoich zbiorów.

Długą tradycję ma też kultura arytmetyczna Hindusów, która osiągnęła bardzo wysoki poziom rozwoju. Hindusi nie mieli astronomii obserwacyjnej, uzupełnili natomiast techniki arytmetyczne przejęte na przełomie er z grecko-babilońskiej astronomii obliczeniowej. By móc bez patrzenia w niebo określić położenie poszczególnych planet, musieli umieć przeliczać w pamięci wielkie liczby i ułamki.

Na przełomie V i VI w. indyjski matematyk i astronom Arjabhata odszedł od tradycyjnego systemu sześćdziesiętnego i wprowadził do swych obliczeń system dziesiętny. Wykorzystał podobną zasadę co Panini. Tworząc system pozycyjny, posłużył się zestawem arbitralnie dobranych znaków. W jego przeznaczonym do pamięciowego opanowania systemie rolę cyfr (1, 2, 3, ..., 25, 30, 40, 50, 60, 70, 80, 90) pełniły 33 spółgłoski indyjskiego alfabetu, liczby wyższe (100, 10000) konstruowano dodając do spółgłosek określone samogłoski. Sądzi się, że przy tej konstrukcji systemu Arjabhata musiał posługiwać się ideą zera. W innym systemie zapisu cyfrom odpowiadały naturalne symbole: cyfrze jeden odpowiadało słowo "księżyc", cyfrze 2 - słowo "ramiona", cyfrze 0 - słowo "pustka". Upraszczając niejako sprawę, można powiedzieć, że w tym zapisie liczbie 201 odpowiadałoby sformułowanie "ramiona-pustka-księżyc". Stąd już był tylko krok, aby przejść do zapisu cyfrowego, który w kręgu cywilizacji indyjskiej pojawił się w połowie VII w. i następnie zrobił oszałamiającą karierę na świecie pod nazwą "cyfr arabskich".

Posługiwanie się arbitralnymi systemami znaków u Hindusów jest głęboko zakorzenione w tradycji. Gdy teraz indyjska młodzież uczy się informatyki, pisania programów komputerowych, to mimo młodości samej dziedziny, dla osób wychowanych w kulturze tego kraju nie jest to w gruncie rzeczy nic nowego. W tym sensie Hindusi mogą mieć w świecie informatycznym większe szanse niż inni.