Konceptualiniai įrankiai moksle ir analogija su programavimu

Pradėjus galvoti apie konceptualinę pažangą moksle (t.y. kai konceptualinės naujovės efektyviai padeda siekiant pažintinių tikslų, tarkime, ieškant dėsningumų), mano mintis buvo užkliuvus už analogijos su programavimo kalbų efektyvumu, kaip apie tai užsimena C++ kalbos kūrėjas Bjarne Stroustrup savo “filosofinėje pastaboje” (kaip jis pats tai vadina):

“Programavimo kalba tarnauja dviem susijusiems tikslams: programuotojui ji suteikia instrumentą, kuriuo aprašomi įvykdytini veiksmai, ir sąvokų aibę, kuri naudojama, kai apgalvojama, kas gali būti padaryta. Idealo požiūriu pirmas tikslas reikalauja “artimos mašinai” kalbos tam, kad visais svarbiais mašinos aspektais būtų paprastai ir efektyviai tvarkomasi programuotojui pakankamai akivaizdžiu būdu. C kalba ir buvo sukurta pirmiausia tai turint omenyje. Antrasis tikslas idealo požiūriu reikalauja kalbos, “artimos spręstinai problemai”, tam, kad sprendimo sąvokos galėtų būti išreikštos tiesiogiai ir trumpai. Visų pirma tai turint omenyje buvo konstruojamos priemonės, kuriomis buvo papildyta C sukuriant C++… Kalba programuotojui suteikia konceptualinių įrankių rinkinį; jei šie yra neadekvatūs iškeltam tikslui, jie paprasčiausiai bus ignoruojami.”
(Stroustrup, Bjarne. The C++ programming language. Addison-Wesley Longman, Inc., 1997, p. 9)

Tai nėra ypatingos reikšmės analogija ir jokių minties perversmų nesukėlė, bet ji man pasirodė įdomi (plačiau žiūrint, šiame kontekste galima galvoti ir apie įvairias (nekonceptualines) inžinierines inovacijas istorijoje, reikalingas siekiant atitinkamų tikslų, nors nedidelė nauda iš labai plačios įrankis-tikslas analogijos).