21 września, 2012

Języki a Programowanie


Chodzi mi o to, żeby język giętki
powiedział wszystko, co pomyśli głowa.
-- Juliusz Słowacki

Jakiś czas temu został mi polecony artykuł "Mowa duszy" z Wiedzy i Życia (09/2011), który traktował o zależnościach pomiędzy myśleniem, a mówieniem. Jedna z ciekawych obserwacji dotyczyła osób bilingualnych, płynnie posługujących się dwoma językami, często wychowanych w dwóch kulturach w wyniku np. przeprowadzek. Eksperymenty pokazywały, że osoby te myślały na dwa różne sposoby, kiedy przedstawiło im się to samo pytanie w dwóch językach. Badania aktywności mózgowej pokazywały aktywacje innych obszarów w mózgu w odpowiedzi na pozornie tę samą treść. W moim mózgu pojawiła się iskierka.

Photo by Manjith Kainickara
Druga, równie ciekawa informacja dotyczyła pewnego chłopca z jakiegoś małego plemienia, gdzieś w inaczej cywilizowanym świecie. Badacz opowiadał, że dostrzegł wyjątkową płynność ruchów u jednego z młodych tubylców i postanowił nauczyć go tańczyć, ale jego wysiłki spełzły na niczym. Na czym polegała trudność? Naukowiec poległ, kiedy chłopak nie mógł zrozumieć, co to znaczy, że ma wykonać krok w prawo albo w lewo. Plemię, z którego młodzian pochodził nie znało pojęcia kierunków względnych. W ich kulturze wszystko znajdowało się na północ, wschód, zachód lub południe od punktu odniesienia. W takiej sytuacji dość ciężko opisać np. walca wiedeńskiego, który polega przecież na ciągłych obrotach. Nie chodzi o to, że nie da się tego zrobić, jest to po prostu bardzo trudne. Iskierka w moim mózgu przeskoczyła.

Z powyższych informacji i własnych doświadczeń mogę wysnuć pewien wniosek - warto uczyć się różnych języków, również programowania. Różne języki programowania uczą różnych idei; i nie chodzi o to, że program P napisany w języku A jest nie do napisania w języku B... ale często jest tak, że ten sam program w języku B jest najgorszym koszmarem programisty, podczas gdy w języku A to zaledwie parę prostych linijek kodu. Tak jak pewne tańce nie powstałyby w kulturze absolutnych kierunków, tak niektóre pomysły nie powstałyby w Assemblerze i C.

Do tematu jeszcze pewnie nie raz wrócę, bo czuję, że dotyka czegoś ważnego.

Brak komentarzy:

Prześlij komentarz