Po panikos visada bus atsigavimas

Prisipažinsiu, kad jau daug kartų sulaužiau “Sveikos gyvensenos algoritmą”. Tačiau gera žinia ta, kad algoritmas parašytas ant Go programavimo kalbos, todėl visada yra viltis atsitiesti. Man labai patinka tai, kad su Go galima apsibrėžti “defer” funkciją, kuri visuomet suveiks, kas benutiktų, na nebent sudaužytum kompiuterį arba jį sugadintum, tuomet jau nebesuveiks, bet jeigu kompiuteris veikiantis, šita apsibrėžta funkcija visuomet suveiks. Žodžiu “defer” funkcija reikalinga tam, kad kai įvyks kritinė algoritmo klaida ir su “panic” žodžiu gali nurodyti, kada kritinė klaida įvyksta. Beje, yra nuansas, kad “defer” funkcija pasileis algoritmo pabaigoje, nesvarbu ar algoritmas bus sėkmingas ar bus “sulaužytas”. Taigi, vienintelis likęs klausimas, kas turėtų būti toje “defer” funkcijoje? Pagrindinis dalykas, tai patikrinti su “recover” žodžiu, ar įvyko panika, ar viskas buvo sėkmingai atlikta. Ir tada tiesiog galima parašyti ekrane: “Buvo panika ir įvyko algoritmo pažeidimas, bet viskas gerai, atsistačiau ir tęsiu toliau”. Žodžiu po “recover” funkcijos, kuri Go kalboje yra integruota, algoritmas tęsiamas toliau lyg nieko ir nebūtų įvykę.

Man tuo ir patinka Go, kad yra pagalvoti tokie atvejai, kas bus jeigu algoritmas nesuveiks arba įvyks klaida ir viskas sugrius. Ištiesų taip ir gyvenime, niekada nežinosi, kada užsimanysi ledų ar ten tarkim alaus. Esmė, kad to, kas buvo ar įvyko nebegaliu pakeisti, todėl tesingiausias ir logiškiausias sprendimas eiti toliau tarsi nieko nebūtų įvykę. Nes kaltinimas savęs ir graužimas nieko neduoda. Todėl aš paleidžiu “recover” funkciją ir tęsiu savo “Sveikos gyvensenos algoritmą” toliau.

Ir žinau, kad dar daug kartų “laužysiu” algoritmą, tačiau algoritmas veikia ant Go, todėl ramus, kad visuomet suveiks “recover” funkcija.