Provided by: manpages-pl-dev_20060617-3_all bug

NAZWA

       Tcl - Podsumowanie skladni jzyka Tcl
_________________________________________________________________

OPIS

       Nastpujce reguly definiuj semantyk jzyka Tcl:

       [1]    Skrypt  Tcl  jest  lacuchem, zawierajcym jedn, lub wicej komend.
              redniki  i  nowe  linie  s  separatorami  komend,  chyba   e   s
              zacytowane.  Zamykajce nawiasy s normalnie terminatorami komend.

       [2]    Komenda  jest analizowana w dwoch krokach.  Najpierw interpreter
              Tcl rozbija komend na s/lowa i dokonuje opisanych niej podstawie.
              Podstawienia  te  s  dokonywane jednakowo dla wszystkich komend.
              Pierwsze slowo jest uywane do lokalizowania  procedury  komendy,
              ktora  wykona  polecenie,  a  nastpnie wszystkie pozostale slowa
              komendy  s  przekazywane  do  tej  procedury.    Procedura   moe
              interpretowa  kade  ze  swoich  slow  w dowolny sposob, np. jako
              liczb calkowit, nazw  zmiennej,  list,  lub  skrypt  Tcl.   Rone
              komendy ronie interpretuj swoje slowa.

       [3]    Slowa  komendy  s  rozdzielane  bialymi  spacjami  (poza  nowymi
              liniami, ktore s separatorami komend).

       [4]    Pierwszy znak  slowa  to  podwojny  cudzyslow  (``"''),  ostatni
              rownie.   Jeli midzy cudzyslowami pojawi si redniki, nawiasy czy
              biale spacje, to bd one traktowane jak zwykle  znaki  wlczone  w
              slowo.   Podstawianie  komend  i  zmiennych,  oraz  podstawianie
              ukonikowe  jest  dokonywane  na  znakach  midzycudzyslowowych  w
              sposob opisany niej.  Podwojne cudzyslowy nie s zachowywane jako
              elementy slowa.

       [5]    Jeli  pierwszy  znak  slowa  jest  otwartym  nawiasem  klamrowym
              (``{''),  to slowo jest koczone klamr zamykajc, (``}'').  Klamry
              zagniedaj si w  slowie:  kada  otwarta  klamra  musi  mie  klamr
              zamykajc  (jednak  jeli klamra jest cytowana lewym ukonikiem, to
              jej dzialanie nie wymaga klamry zamykajcej).  Na  znakach  midzy
              klamrami  nie  dokonuje si adnych podstawie, nie liczc podstawie
              lewy ukonik-nowa linia. Slowo  sklada  si  dokladnie  ze  znakow
              midzy klamrami, nie liczc samych klamr.

       [6]    Jeli  slowo  zawiera  otwarty  nawias kwadratowy (``[''), to Tcl
              dokonuje  podstawienia   komendy.    Aby   tego   dokona,   wola
              rekursywnie interpreter Tcl, ktory przetwarza znaki znajdujce za
              nawiasem jako skrypt Tcl. Skrypt moe zawiera dowoln liczb komend
              i musi by zakoczony nawiasem zamykajcym (``]'').  Wyniki skryptu
              (np. wynik ostatniej komendy) s  podstawiane  zamiast  nawiasow,
              wraz  ze  znakami  znajdujcymi  si  midzy nimi.  Moe by dowolnie
              wiele podstawie w pojedynczym slowie.  Podstawianie  komend  nie
              jest dokonywane na slowach ujtych w nawiasy klamrowe.

       [7]    Jeli   slowo   zawiera  znak  dolara  (``$'')  to  Tcl  dokonuje
              podstawienia  zmiennej:  znak  dolara  i   nastpujce   znaki   s
              zastpowane  wartoci  zmiennej. Podstawienie zmiennej moe przybra
              jedn z postaci:

              $nazwa
                              Nazwa jest nazw zmiennej skalarnej;  nazwa  jest
                             koczona  dowolnym  znakiem, ktory nie jest liter,
                             cyfr, lub podkreleniem.

              $nazwa(indeks) Nazwa daje nazw  zmiennej  tablicowej,  a  indeks
                             daje  nazw  jej  elementu.  Nazwa  musi sklada si
                             tylko z  liter,  cyfr  i  podkrele.   Na  znakach
                             indeksu   dokonywane   s   podstawienia   komend,
                             zmiennych i lewych ukonikow.

              ${nazwa}       Nazwa jest nazw zmiennej skalarnej.  Moe  zawiera
                             dowolne    znaki   poza   zamykajcymi   nawiasami
                             klamrowymi.

              W pojedynczym  slowie  moe  by  wiele  podstawie  zmiennych.  Na
              slowach,  ujtych  w  klamry  nie  jest  dokonywane  podstawienie
              zmiennych.

       [8]    Jeli w slowie znajduje  si  lewy  ukonik  (``\''),  to  nastpuje
              podstawienie ukonikowe.  We wszystkich wypadkach, poza opisanymi
              niej, ukonik jest porzucany, a nastpujcy  znak  jest  traktowany
              jak  zwykly i jest wlczany w slowo.  Umoliwia to wlczanie znakow
              takich, jak podwojne cytaty, nawiasy zamykajce i  znaki  dolara.
              Nastpujca   tabela   pokazuje   sekwencje   ukonikowe,  ktore  s
              traktowane szczegolnie, wraz z wartociami, ktore  wchodz  w  ich
              miejsce.

              \a    Dzwonek (0x7).

              \b    Backspace (0x8).

              \f    Form feed (0xc).

              \n    Nowa linia (0xa).

              \r    Powrot karetki (0xd).

              \t    Tabulacja (0x9).

              \v    Tabulacja pionowa (0xb).

              \<nowalinia>bia/laspacja
                    Zamiast  ukonika,  nowej  linii i bialej (bialych) spacji,
                    podstawiany  jest  pojedynczy  znak   spacji.    Sekwencja
                    ukonikowa  jest  unikalna  dlatego,  e  jest podstawiana w
                    oddzielnym  przedbiegu   przed   przetworzeniem   komendy.
                    Znaczy  to,  e  bdzie  podstawiona  nawet gdy nastpi midzy
                    nawiasami,  a  wynikajca  spacja  bdzie  traktowana   jako
                    separator   slow  (o  ile  nie  jest  w  cudzyslowach  lub
                    klamrach).

              \\    Lewy ukonik (``\'').

              \ooo  Cyfry ooo (jedna, dwie, lub trzy z  nich)  daj  rzeczywist
                    osemkow warto znaku.

              \xhh  Cyfry  szesnastkowe hh daj szesnastkow warto znaku. Obecna
                    moe by dowolna liczba cyfr.

              Podstawianie ukonikowe nie jest dokonywane na slowach  ujtych  w
              klamry,  nie  liczc  podstawienia  ukonik-nowa  linia, opisanego
              wyej.

       [9]    Jeli w miejscu, gdzie Tcl oczekuje pierwszego  znaku  pierwszego
              slowa komendy znajduje si znak ``#'', to znak ten i znaki za nim
              nastpujce, a do nowej linii, s traktowane  jako  komentarz  i  s
              ignorowane.   Znak  komentarza  ma  znaczenie gdy znajduje si na
              pocztku komendy.

       [10]   Kady znak jest przetwarzany przez interpreter Tcl tylko raz jako
              element  tworzenia  slow  komendy.   Na  przyklad,  jeli  nastpi
              podstawienie zmiennych, dalsze podstawienia na wartoci  zmiennej
              nie  nastpuj;  warto  jest  wstawiana  doslownie.   Jeli  nastpi
              podstawianie  komend,  to  zagniedone  komendy  s   przetwarzane
              calociowo przez rekursywne wywolania interpretera Tcl; przed tym
              wywolaniem  nie  s  robione  adne  podstawienia.   Podobnie   po
              wywolaniu nie robi si adnych dodatkowych podstawie.

       [11]   Podstawienia nie tycz si ogranicznikow slow komendy. Na przyklad
              podczas podstawiania zmiennych cala warto zmiennej staje si czci
              pojedynczego slowa, nawet jeli warto zmiennej zawiera spacje.

INFORMACJE O T/LUMACZENIU

       Powysze  tlumaczenie  pochodzi z nieistniejcego ju Projektu Tlumaczenia
       Manuali i moe nie by aktualne. W razie zauwaenia ronic  midzy  powyszym
       opisem  a  rzeczywistym  zachowaniem  opisywanego programu lub funkcji,
       prosimy o zapoznanie si z oryginaln (angielsk) wersj strony podrcznika.