2019. november 24., vasárnap

BESZÉLJÜNK EMBEREBBÜL A SZÁMÍTÓGÉPPEL!

QUBIT
Szerző: KÁLMÁN LÁSZLÓ
2019.11.24.


A programok és a nyelv nyelvtana

Karinthy Frigyes szerint az irodalomban Jack London volt az első, aki ahelyett, hogy az állatokat mindenféle emberi tulajdonsággal ruházta volna fel, a fordított irányra helyezte a hangsúlyt, arra, hogy az emberi érzelmekben, szokásokban stb. hogyan ismerhetjük fel az állatvilágból öröklött mintákat. A 20. század nyelvészetének meghatározó vonása volt, hogy a matematika, a logika és a számítógépes programok formális nyelveinek a mintájára próbálta leírni az emberi (természetes) nyelvek rendszereit. Most néhány részben szeretném Jack London módjára megfordítani az irányt, és arról beszélni, hogy a programozási nyelvekben mennyire lehet, és mennyire kellene a természetes nyelv részrendszereiről példát venni.

Azt hiszem, Donald Knuth mondta egyszer, hogy a programokat nem számítógépeknek írjuk, hanem más embereknek. Az első hallásra furcsa állítás valójában kézenfekvő igazságot mond. A számítógépnek teljesen mindegy, hogy mi milyen programozási nyelven, hogyan fogalmazunk meg, állítunk össze egy programot, ugyanis a mi szövegesen leírt programunkat (hacsak nem közvetlenül gépi utasításokat írunk, de az nagyon ritka eset) úgyis átalakítja majd egy okos program a gép számára „közvetlenül érthető” utasítássorrá. Tehát az ember által írt programokkal szemben nem a számítógép igényei támasztanak követelményeket, hanem az, hogy másvalaki (vagy maga a program írója) később módosítani, fejleszteni, folytatni szeretné a programot, ehhez pedig meg kell értenie, át kell tudnia tekinteni, és az a jó, ha erre nem kell túl nagy időt és energiát pazarolnia.

A programozó rengeteget tehet azért, hogy emberbarát legyen a programja, kezdve azzal, hogy jól érthető fantázianeveket ad mindennek, amit ő nevez el, azon keresztül, hogy nem ír túl hosszú összefüggő programrészeket (egy-egy egységnek nem szabadna többet elfoglalnia, mint egy képernyőnyi), egészen odáig, hogy bőségesen ír megjegyzéseket a programjának minden részletéhez. Van azonban egy olyan vonása a programozási nyelveknek, amibe állandóan mindenki beleütközik, akinek már egyáltalán volt dolga velük, és amin a programozó nem sokat tud segíteni, mert a létező programozási nyelvek lényegéből fakad. Ez pedig a különböző programrészletek paraméterezése. Mielőtt elmagyaráznám, hogy mit jelent ez pontosan, gyorsan megvilágítom egy rövid példával:...

Nincsenek megjegyzések:

Megjegyzés küldése

Megjegyzés: Megjegyzéseket csak a blog tagjai írhatnak a blogba.