Ŝlosilvorto (programlingva): Malsamoj inter versioj

[kontrolita revizio][kontrolita revizio]
Enhavo forigita Enhavo aldonita
RG72 (diskuto | kontribuoj)
Komparante formaligon de iuj programlingvoj
Linio 1:
En [[programlingvo]]j '''ŝlosilvorto''' (aŭ rezervitaj vortoj) estas vorta simbolo, kiu rolas estkiel gramatikilo, ekz-e la ordonaj krampoj <code>starto</code> … <code>fino</code> ({{lang-en|<code>begin</code> … <code>end</code>}}). Per rezervitaj vortoj oni intecas de la programistoj programantaj programoj en tiu programlingvo ne rajtas krei ajnan datumon kun tiuj nomoj. Rezervitaj vortoj havas specialan signifon kiam ili aperas en lingvo kaj estas bone difinitaj en la formala priskribo de la programlingvo.
 
Pli precize oni povas difini la ŝlosilvortojn en la terminoj de [[formala lingvo]] (ja programlingvoj estas formalaj lingvoj): la ŝlosilvortoj estas tiaj simboloj de la ''alfabeto'' de formala lingvo, kiuj el la vidpunkto komunlingva estas kunmetitaj el literoj de homa lingvo.
 
Plej multaj el la rezervitaj vortoj inkluzivas kontrolvortojn, kiuj difinas strukturojn de ekzekutado, kondiĉojn al ekzekutado, ekzekutsalto al etiketoj, tipajn nomojn de primitivaj [[Datumo|datumoj]] kaj pli. La kontrolvortoj kontrolas la ekzekutdirekton de la komputila programo.
 
Laŭ la tradicio de [[Algolo (programlingvo)|Algolo]] en la tipografiaj publikaĵoj de algoritmoj kaj ĉe redaktado en lingvo-konsciaj redaktiloj la ŝlosilvortojn oni apartigas per [[graseta tiparfasono]]. Oni do povas diri, ke la «alfabeto» de Algolo inkludas, interalie:
Linio 26 ⟶ 28:
 
== La maŝinaj prezentoj ==
Algolo konsekvence disigis la nomspacon de la ŝlosilvortoj kaj la [[Nomspaco|nomspacon]] de la [[nomo (programlingva)|nomo]]j deklaritaj de programisto, tiel ke senprobleme oni povis deklari la [[variablo (programlingva)|variablo]]jn kiaj
: '''real''' ''do'', ''real'', ''then'';
Tio eblis danke al specialaj [[eskapilo]]j, kiuj apartigis la ŝlosilvortojn — vd la apartan artikolon [[ŝlosilvortigo]].
 
En pliparto da modernaj programlingvoj oni ne plu zorgas pri formala kohero, sed simple malpermesas al la programistoj deklari nomojn kies teksta formo koincidas kun tiu de iu ajn ŝlosilvorto. Tiel apartigitajn ŝlosilvortojn oni do nomas '''rezervitaj vortoj'''.
 
En ankoraŭ aliaj lingvoj, kiel ekzemple la pli malnovaj lingvoj ALGOL, [[Fortrano|FORTRAN]] kaj PL/1, ekzistas ŝlosilvortoj sed neniuj rezervitaj vortoj.
 
== Komparante formaligon de iuj programlingvoj ==
La listo de rezervitaj vortoj estas difinita kiam la lingvo evoluas, sed kelkfoje rezervitaj vortoj aperos nur por estonta uzo.
 
Ekzemple en [[Java (programlingvo)|Java]], la vortoj ''const'' kaj ''goto'' estas rezervitaj vortoj kaj ne uzeblas por la disvolva procezo mem ekzemple kiel nomoj de [[Variablo (programlingva)|variabloj]] kaj [[Funkcio (subprogramo)|funkcioj]], Kvankam ili havas nenian signifon en Java. Konservante ĉi tiujn vortojn, lingvaj programistoj rezervis la rajton uzi ilin estonte sen kompromiti la malantaŭan kongruecon de la lingvo. La nombro de rezervitaj vortoj varias laŭ la programlingvo. Dum Java kaj aliaj lingvoj evoluigitaj de [[C (programlingvo)|C]] havas pli malpli de ĉirkaŭ 50 rezervitaj vortoj, [[COBOL]] enhavas ĉirkaŭ 400 el ili. Ĉe la alia fino de la spektro troveblas PL / I kaj [[Prologo (programlingvo)|Prologo]], kiuj ne enhavas iun rezervitan vorton. Nenio dedukteblas el la kvalito de la lingvo el la nombro da vortoj rezervitaj en ĝi, ĉar la nombro estas ĉefe pro la bezonoj, por kiuj la lingvo estis disvolvita.
 
== Terminologia noto ==