char*x(char*s,int c){char*r=0;while(*(*s-c?s++:r=s++));return r;}
Kouknu a vidím není vlastností jazyka, ale vlastnost konkrétního programu a programátora. Funkce x kterou uvádím pro pobavení je napsaná v jazyce C, který syntaktický cukr obsahuje, přesto není na první pohled vidět, že je ekvivalentní jedné standardní knihovní funkci.
To je klasická polopravda. Kdybych chtěl být ostřejší, tak řeknu (dost zjevná a chabá) manipulace.
Z tvrzení "v každém jazyce se dá psát nečitelně" totiž nijak neplyne, že "v každém jazyce se dá psát čitelně" a tedy ani "čitelnost je (JEN) vlastnost programátora".
Celá pravda je, že syntaxe jazyka přinejmenším stanovuje horní mez čitelnosti, kterou je pisatel schopen dosáhnout.
V některých jazycích se totiž NEDÁ psát tak čitelně jako v jiných i kdyby se pisatel přetrhl a na druhé straně některé jazyky čitelné a strukturované psaní dokonce částečně vynucují (např. python syntaxe vynucující odsazování bloků).
1. Jde jen o zvyk. Když jsem přešel z Pascalu na C, tak mi přišlo { a } místo begin a end podobně nepřátelské. Dokonce jsem si myslel, že na = a == místo := a = si nikdy nezvyknu.
Opět podobná věc: z toho, že se ti zdálo X o Y a pak jsi zjistil, že X nebyla pravda, nijak neplyne, že když se někomu zdá X o Z, tak to taky není pravda.
Příčinou zdánlivé nečitelnosti je jen nezvyk a nechuť učit se nové věci.
Takže např. binární výpis programu je vlastně čitelný - a jestli si někdo myslí, že ne, tak se jenom nechce učit nové věci.
Dokonce je "čitelný" i program ve zvukové podobě: cat binarka >/dev/dsp
Ach jo. Možná by to chtělo vzít v úvahu, že člověk není stroj, který se může naprogramovat na libovolný způsob komunikace. My lidi prostě máme některé věci zažité a přijdou nám "přirozené" (i když přirozené nejsou, museli jsme se je naučit), proto ke srozumitelnosti přispívá, když jde jazyk těmhle zažitým věcem naproti a ne zcela proti nim.