Version 9 of De elva reglerna

Updated 2003-05-22 11:09:56

This is a Work-in-progress Swedish translation of the eleven syntactic rules of Tcl. (see Endekalogue for other translations). BESKRIVNING

F�ljande regler definierar syntax och semantik f�r programmeringsspr�ket Tcl:

(1) Kommandon

Ett Tcl-skript �r en (unicode-)str�ng som inneh�ller ett eller flera kommandon. Semikolon och nyradstecken �r kommandoavskiljare s�vida de inte �r anf�rda enligt beskrivning nedan. H�gerhakparenteser avslutar kommandon under kommandosubstituering (se nedan) s�vida de inte �r anf�rda.

(2) <Evaluation.>

Ett kommando <is evaluated> i tv� steg. F�rst delar Tcl-tolken upp kommandot i ord och utf�r substituering s� som beskrivs nedan. Dessa substitueringar utf�rs p� samma s�tt f�r alla kommandon. Det f�rsta ordet anv�nds f�r att finna en kommandoprocedur som ska utf�ra kommandot, de �vriga orden l�mnas till kommandoproceduren. Kommandoproceduren har frihet att tolka vart och ett av orden p� vilket s�tt den �nskar, t ex som ett heltal, variabelnamn, lista eller Tcl-skript. Olika kommandon tolkar sina ord p� olika s�tt.

(3) Ord

Orden i ett kommando avskiljs fr�n varandra av vita tecken (med undantag f�r nyradstecken, som �r kommandoavskiljare.

(4) Dubbelcitattecken

Om det f�rsta tecknet i ett ord �r ett dubbelcitattecken (") s� avslutas ordet av n�sta dubbelcitattecken. Om semikolon, h�gerhakparenteser eller vita tecken (inklusive nyradstecken) f�rekommer mellan citattecknen behandlas de som vanliga tecken och r�knas in i ordet. Komandosubstituering, variabelsubstituering och bakstreckssubstituering utf�rs p� tecknen mellan citattecknen s� som beskrivs nedan. Dubbelcitattecknen ing�r inte i sj�lva ordet.

(5) Klamrar

Om det f�rsta tecknet i ett ord �r en v�nsterklammer ({) s� avslutas ordet av n�sta motsvarande h�gerklammer (}). Klamrar kan n�stlas inom ett ord: f�r varje ytterligare v�nsterklammer m�ste det finnas ytterligare en h�gerklammer (men om en v�nster- eller h�gerklammer inom ordet �r anf�rd med ett bakstreck r�knas den inte i klammerpassningen). Inga substitueringar utf�rs p� tecknen mellan klamrarna med undantag f�r bakstreck-nyradstecken-substitueringar som beskrivs nedan. Inte heller kommer semikolon, nyradstecken, h�gerhakparenteser eller vita tecken att tolkas som speciella tecken. Ordet kommer att best� av exakt de tecken som st�r mellan de yttersta klamrarna; de yttre klamrarna ing�r inte i ordet.

(6) Kommandosubstituering

Om ett ord inneh�ller en v�nsterhakparentes ([) s� genomf�r Tcl kommandosubstituering. F�r detta �ndam�l startar den Tcl-tolken rekursivt f�r att bearbeta tecknen som f�ljer efter v�nsterhakparentesen som ett Tcl-skript. Skriptet f�r inneh�lla ett godtyckligt antal kommandon och m�ste avslutas med en h�gerhakparentes (]). Skriptets resultat (dvs resultatet av dess sista kommando) s�tts in i ordet som ers�ttning f�r hakparenteserna och alla tecken mellan dem. Ett godtyckligt antal kommandosubstitueringar f�r f�rekomma i ett enskilt ord. Kommandosubstituering utf�rs inte p� ord som omsluts av klamrar.

(7) Variabelsubstituering

Om ett ord inneh�ller ett dollartecken ($) s� genomf�r Tcl variabelsubstituering: dollartecknet och de f�ljande tecknen ers�tts i ordet av variabelns v�rde. Variabelsubstituering f�rekommer i f�ljande former:

$namn
namn �r namnet p� en skal�rvariabel; namnet �r en sekvens av ett eller flera tecken som �r en bokstav, siffra, understreck eller namnrymdavskiljare (tv� eller flera kolon).
$namn(index)
namn �r namnet p� en <array>-variabel och index �r namnet p� ett element i denna. Namn f�r bara best� av bokst�ver, siffror, understreck och namnrymdavskiljare, och f�r vara en tom str�ng. Kommandosubstituering, variabelsubstituering och bakstreckssubstituering kommer att utf�ras p� tecknen i index.
${namn}
namn �r namnet p� en skal�rvariabel. Det f�r inneh�lla vilka tecken som helst f�rutom h�gerklammertecken.

Ett godtyckligt antal variabelsubstitueringar kan f�rekomma i ett enskilt ord. Variabelsubstituering utf�rs inte p� ord som omsluts av klamrar.

to be continued...


Vem �r det som jobbar p� detta? Hj�lper g�rna till! - VL 21 maj 2003.

Peter Lewerin jobbar p� detta. Svensktalande personer �r v�lkomna att l�mna f�rslag, antingen h�r p� sidan eller per e-post. Notera att alla �ndringar ovanf�r horisontalstrecket ovan riskerar att f�rsvinna om jag uppdaterar texten utan att m�rka att n�gon annan gjort en �ndring.

Skall ta en titt n�r jag har lite tid �ver, vore trevligt att f� ihop de elva - VL

Speciellt �nskar jag att du kunde titta p� de ord som jag inte hittat n�gon bra �vers�ttning f�r. Jag har markerat dem <s� h�r>. "Substituering" trivs jag ocks� d�ligt med, men �nnu s�mre med "ers�ttning", tror jag.


Category Documentation |