Компютърна програма и човешко мислене - Qubit
Вече стигнах до третата част от поредицата, в която говоря за странна страна на семантиката на програмните езици. Винаги говорим за връзката между компютър и човек по отношение на това как компютърът може да имитира начина, по който човек се държи (говори, разбира и т.н.). Тук обаче ставаше въпрос за това какви са характеристиките на компютърните програми, които ги правят толкова трудни за използване в сравнение с човешките езици.

Досега говорих за програми, които правят едно и също всеки път, когато се изпълняват, ако не бяха техните параметри, техните променливи части, които са различни дори при всяко изпълнение стойност и поради това програмите се държат различно в отделните случаи. Тоест, те не описват процес съвсем точно, а само грубо, схематично; техните променливи части могат да се различават от процеса до процеса, в зависимост от това какви параметри задаваме, какви стойности присвояваме на параметрите.
Казах също, че има два начина за определяне на параметри. Едната е, че има набор поръчка, в който можем да посочим параметрите и от тук програмата „знае” кой параметър има каква стойност. Например „замени“, тоест първо трябва да посочим низа, който трябва да бъде заменен, вторият е този, който искаме да заменим, а третият е целият низ, в който се извършва заместването. Другият вариант е, че са ключови думи, което можем да използваме, за да посочим за кой параметър мислим, например „замени целта =. ново =. пълно =. ”, Където след ключовите думи„ цел ”,„ ново ”и„ завършено ”, ние посочваме какво, кога и какво искаме да заменим. В този втори случай, разбира се, няма значение в какъв ред въвеждаме ключовите думи (със стойностите, които ги следват).
Проблемът и в двата случая е произвол. От нищо не следва (и следователно е много трудно да се научи) защо това е задължителният ред на параметрите, а също така от нищо следва, че е възможно да се посочи тяхната стойност със самите ключови думи, с които се използват . Това са всички решения на програмиста и всеки, който иска да използва програмата, може само да разбере от документацията как да посочи параметрите.
Накрая казах също, че, разбира се, има и произвол в естествените езици, дори в какъв случай или съществително използваме, за да обозначим ролята на различни участници в дадено събитие (напр. липсва, не ти). Но в естествените езици, колкото повече глаголи имат сходни значения, толкова по-вероятно е да отбележим (сходните) роли на различните участници по подобен начин и това ще улесни нещата, които учат езика или детето, което учи езика.
Няма гаранция за подобно нещо в програмните езици. Бихме могли да кажем, че всички програми са изцяло „вътрешни“ за това как се справят с външно зададени параметри (или по отношение на техния ред или ключови думи). Независимо дали идентифицираме параметрите с техните серийни номера или ключови думи, това е подобно бихме го нарекли тях, а външният свят ще трябва да знае имената им, за да запише стойността им. Имената обаче са вид етикет, напълно произволен, произлизащ от простото именуване, по никакъв начин не предполагащ какво имаме предвид под тях. Така че тук трябва да взема преждата.
Вместо принуда
Вече споменах в предишния раздел, че, разбира се, не става въпрос за решение, което предполага регулирането на програмистите, тоест, че ги принуждаваме да използват различни навици от обичайните си навици. Може да има само едно решение, така че всяка програма да не трябва да се справя с начина, по който се обработват техните параметри.
Графика: Tóth Róbert Jónás/Qubit
По-специално можем да измислим само решение, което да замести произволния акт на името с нещо друго. Как можем да идентифицираме нещо, ако не като го назовем? Нека просто опитаме какво можем да направим, ако не знаем името на нещо. Очевидно ще се опитаме да „ограничим“.
В естествените езици всъщност се случва нещо подобно. Например, вярно е, че a -с Суфиксът се използва за много цели в унгарски, но ако разгледаме употребата му отделно, можем да характеризираме ролята му с един вид ограничение Когато обозначава прилагателно, той замества описание на „използване на това нещо като устройство“, когато идентифицира съ-прилагателно, замества „с това нещо“. Разбира се, вече зависи от значението на изявлението и разширението как точно може да се реализира съдържанието на тези циркуляри. Например той отива с кола за да разберем термина, трябва да разберем как автомобилът може да се използва като средство за движение (вероятно като седи вътре) и какво може да бъде движението, когато автомобилът се извършва като средство. НА Отидох с Йози не е необходимо много, за да се разбере терминът: Ние с Йози отидохме някъде едновременно и в непосредствена близост един до друг.