ერთი მაგიდა, ორი კაცი და JS Reference Types.

Rostomi Kutchukhidze
3 min readAug 31, 2022

--

არსებობს ასეთი ფილოსოფიური გამოცანა:

ოთახში ორი კაცი და ერთი მაგიდაა.
შეკითხვა: რამდენი მაგიდაა ოთახში?

პასუხი მარტივია: 1 მაგიდა.

მაგრამ არც მთლად ასე მარტივადაა საქმე.

ამ გამოცანას კიდევ ორი პასუხი აქვს.

ოთახში 2 მაგიდაა რადგან ორივე კაცის ცნობიერებაში ამ მაგიდის განსხვავებული ვარიანტები არსებობს. არა აბსოლუტურად განსხვავებული, მაგრამ მაინც. ტყუპი მხატვრებიც რომ იყვნენ და დახატვა მოსთხოვოთ მაინც აღმოაჩენთ სხვაობას რადგან ცნობიერებაში ერთი და იგივე ობიექტი აბსოლუტურად ერთნაირად არ ჯდება.

მაშასადამე არსებობს მაგიდა პირველი კაცის გადმოსახედიდან და არსებობს მაგიდა მეორე კაცის გადმოსახედიდან.

მაგრად დახეთ საოცრებას!

ოთახში სამი მაგიდაა, რადგან ამ ორ მაგიდას საკუთრივ თავად ფიზიკურად არსებული მაგიდაც უნდა მივათვალოთ. მისი არსებობა ხომ ობიექტური ჭეშმარიტებაა?

გამოდის რომ ოთახში სამი მაგიდაა.

ჰეეეი ავტორ! რა შუაშია ეს ყველაფერი ჯავასკრიპტის რეფერენს ტაიპებთან?

მაცადე შემოგევლე და ყველაფერს აგიხსნი.

ავიღოთ მასივი რომელიც მაგიდის ფეხებს ითვლის.

და დავინახოთ ეს მაგიდა ორივე კაცის პერსპექტივიდან აბოსლუტურად ერთნაირად.

მაგალითად ორივესთვის მაგიდის ფერი იყოს ოდნავ მუქი წითელი შეფერილობის მქონე ხე.

ახლა კი მათი ცნობიერებები მოვათავსოთ ლაბორატორიაში და დეენემის ანალიზი ავუღოთ (ანუ შევადაროთ)

ორივე კაცის მხრიდან აბსოლუტურად ერთნაირად დანახულ ობიექტურ რაოდენობრივ ჭეშმარიტებას ფეხების შესახებ დავამატოთ მათ მიერვე ასევე აბოსლუტურად ერთნაირად დანახული ჭეშმარიტება მაგიდის ფერის შესახებ.

გადავამოწმოთ ისიც რომ ფერით დამატებული მაგიდის აღწერილობა აღარ ემთხვეოდეს მის თავდაპირველ ვერსიას არცერთი კაცის ცნობიერებაში.

ბოლოს კი ამ კაცების ცნობიერებიბის შედეგები ვიხილოთ:

პირველმა ორმა პასუხმა ალბათ არ გაგაკვირვათ.

ჩვენს ზემოთ აღწერილ ამოცანასაც თითქოს რაოდენობრივი პასუხი ჰქონდა და ამ მოვლენის პასუხს არ ემთხვევა.

დიაღ მკითხველო, რაოდენობრივი გაგებით არა, მაგრამ შინაარსობრივად ერთი დასკვნა მივიღეთ:
როცა ობიექტებზე ან მასივებზე პირდაპირ ზემოქმედებას (მუტაციას) ვახდენთ ისინი Heap-ში ინახებიან როგორც ორი კაცის მხრიდან აღქმული ერთი მაგიდა და არა როგორც ფიზიკურად არსებული ერთი მაგიდა.

გადავადასტუროთ:

პ.ს. სექსისტი არ ვარ, უბრალოდ კვოტირების წინააღმდეგი ვარ. ოთახში ორი კაცი იმიტომ იყო რომ ამოცანაა თვითონ ასეთი. ოთახში ქალი და კაცი რომ ყოფილიყო ალბათ მაგიდის შეფასება Java-ს და JavaScript-ის შედარების სიმაღლეზე გავიდოდა და მაგიდა სხვა დანიშნულებას შეიძენდა. ალბათ პასუხიც სხვანაირი იქნებოდა, ამოცანაც… ვინ იცის.

--

--

Rostomi Kutchukhidze

მიყვარს მიმების კეთება. ასევე საკუთარ კომპიუტერსა და Google Drive-ში დროგამოშვებით ფაილებისა და ფოლდერების გადალაგება-გადმოლაგება.