Како би свет могао бити програмиран


У огледима о атомским догађајима морамо да се бавимо оним што су чињенице, појавама које су исто толико стварне као и било које појаве у свакодневном животу. Али атоми или елементарне честице нису исто толико стварни; они образују свет потенцијалности или могућности пре него ствари и чињеница.
Вернер Хајзенберг

Више пута сам се бавио теоријом симулације, њом као могућем објашњењу онога што имамо, тако и одбацивање аргумената који су ми се учинили изразито глупим. Ту би било слепо инсистирање да симулација значи рачунање положаја сваког атома (односно елементарне честице још нижег нивоа). Ко ишта зна о програмирању - зна да то тако не функционише. Зашто се у "озбиљном" разматрању тезе да смо "ми" (не само људи, цео универзум, макар цео свет у којем оперишемо) симулирани, програмирани... упорно не узима у обзир како се заправо програмира, мени није познато. Па да видимо како се то стварно програмира.
Али пре тога пар разјашњења. Почели смо са цитатом једног од оснивача квантне механике, односно чувене Копенхашке интерпретације. Морам признати да она није моја шоља чаја (или кригла пива), али не би је ни у шали назвао својим непријатељем, како рече физичар Шон Керол. Заправо ја се још нисам одлучио која је "моја" интерпретација, да ли је она са више светова, или нека трећа. О томе можда ускоро буде нови блог...

Кад се већ нисам одлучио за нешто другачије, могу позајмити основну идеју ове интерпретације. А према тој идеји "ствари" (ентитети, у пракси субатомске честице, али никад није постављен и објашњен праг где престаје да важи, то је једна од мана ове интерпретације) постоје у потенцијалности, не и у актуелности. После уочавања, односно мерења ентитета - имамо актуелност. Видећемо шта то значи за некога ко би да програмира.
Друга ствар су замерке на само објектно-орјентисано програмирање које сам видео, а које ми делују смисленим. Ипак, овде ће такво програмирање бити узето као парадигма, а на некој ригорозности (то је оно што је критиковано) се неће инсистирати.
Дакле, имамо овде два концепта са којима се потписник редова не слаже (у потпуности), па ипак их узима као неку "основу". Ја не желим да објашњавам квантне феномене (мада би се оно што следи могло узети у обзир). Нити тврдим да је баш ово што ћу изнети тзв. реалност. Али могло би бити тако...

Већ сам поменуо Месец као пример ентитета о којем не морамо знати све да бисмо фунцкционисали, заправо знамо веома мало, а то мало ће се у будућности повећавати. На питање шта је Месец у овом случају одговарамо да је он за програмера класа (тип података). Такав тип наслеђује својства надређене класе природних сателита (у пракси мало тога, јер наш Месец јесте доста атипичан сателит), такође и од класе стеновитих свемирских тела. Како се ствари одвијају (у нашем сценарију који зовемо цивилизација) класа "Месец" може постати недовољно детаљна, па можемо увести класу "рудник на Месецу", такође по једну за сваки конкретан рудник. Тек тад би дошло до повећања обима података
Програмер који чита ово би се могао побунити - зар није Месец, објекат, инстанца класе, а не класа сама!? У решавању проблема које се подстављају пред земаљског програмера то је прихватљиви начин размишљања. Јер програм је по себи апстракција, он не решава све могуће проблеме, већ само оне за које смо заинтересовани. Али овде је резултат програма "објективна реалност".
У том случају је сваки појединачни ентитет не објекат ("по себи") него класа објеката која даје могућност (Хајзембергова потенцијалност) активирања података које програм користи. Могуће је меморијски простор алоцирати тек додељивањем вредности промењивој, дакле њеним "коришћењем", а не неком дефиницијом, иницијализацијом када се "све" иницира. Тако ради програмски језик Пајтон.
Али шта је онда објекат у таквом програмирању?! Одговор нам даје филозофија Бертранда Расела. Објекти су конкретни догађаји. Њима се прикључују атрибути (стања) и методе (начини утицаја на околину). Грешка је да је одређена ствар или стање узрок друге ствари или стања. Догађаји су узрок догађајима. Тако је исправно.

Дакле, ако је класа у нашем случају неки Пера Перић, објекат је рецимо његова свадба. Атрибути су како они интерни за догађај (шта се јело, пило) тако и они који утичу на друге догађаје (психичка стања учесника). Наравно утичу и методе, оне и јесу начин на који догађај "користи своје податке". Ригорозност у употреби ових атрибута и метода (ако су дефинисани као приватни или заштићени) јесте оно око чега се ломе копља, и због чега је објектно-орјентисано програмирање пало под критику. Али то ће бити апстраховано као техничко питање. Оно што је битно је да за подацима постоји потреба само док су они повезани са неким догађајем.
Догађај би тако у случају Месеца био отварање рудника на том небеском телу, или његова експлоатација. Пре отварања рудника ми заиста не морамо да знамо хемијски састав те локације (тачније пре истраживања исплативости, што би могао бити први догађај-објекат везан за ту ствар). Не морамо ни после неког времена, када нас не би занимао (бивши) рудник.
Тако би могли да одговоримо на горњу слику, и мимовски "начин размишљања" на њој. Дакле "богови" програмери слични нама (али зашто и колико?) и не би трошили баш толико много ресурса. Друга ствар је још лакше оповргнути, јер је просто смешна. Зашто би неко симулирао нешто што није идеално? А зашто би симулирао нешто што ЈЕ идеално!? Идеалне ствари нису занимљиве - ни за забаву, а богами ни технички - неће ти таква помоћи код неког сутрашњег изазова. Ја бих се сморио ко нездрав да гледам "симулацију идеалног" - нешто где нема несрећа, ратова и осталих изазова. Надам се да читалац може схватити да је реч о контрадикцији, јер идеално може бити само статично, а ваљда је супротно дефиницији симулације да је она статична.
Још једну ствар треба разрешити - нељудску свест. Уосталом, не пишем џабе "ми" (са наводницима), не патим ја од антропоцентризма. Према Раселу (слично је код Шопенхауера) ми "ствари", односно догађаје можемо појмити само преко свести. Свест је оно што прави проблеме Копенхашкој интерпретацији, макар око питања као што је чувена Шредингерова мачка. И баш је у тим расправама речено да нема разлога да то буде само људска свест.
Не морамо се сада бавити ванземаљским свесним ентитетима. Свест, и догађаје како су описани, можемо у некој мери повезати са псом, мачком или октоподом. Такви догађаји ће наравно бити сасвим другачији од оних који нас се тичу. Количина података често може бити и већа, због чула и акција којима различите животиње располажу. Ипак, тенденција је да количина података (у употреби, дакле потребних, дакле алоцираних) расте развојем интелигенције и технологије, чак експоненцијално. Програмер може осетити проблем и потребу за повећањем ресурса. Зато можда постоји могућност самоуништења цивилизације, а може се увек прибећи и не баш елегантном решењу искључивања рачунара. Што би за нас био тзв. смак света.
Иван Вукадиновић


Коментари

Популарни постови са овог блога

Како је плитак Дејан Стојиљковић

Псеудопатриотизам

Јуриш у поробљену отаџбину