eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programming[?] tcl - do czego to sie moze przydac?Re: tcl - do czego to sie moze przydac?
  • Data: 2012-01-17 11:32:46
    Temat: Re: tcl - do czego to sie moze przydac?
    Od: Maciej Sobczak <s...@g...com> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    On Jan 17, 9:15 am, " M.M." <m...@N...gazeta.pl> wrote:

    > > natomiast Tcl moze sie przydac do tworzenia wlasnych jezykow
    > > specyficznych dla jakiegos zastosowania, bo mozna w nim tworzyc nowe
    > > konstrukcje jezykowe, ktore dzieki jego bardzo prostej i konsekwentnej
    > > skladni nie sa odroznialne od procedur.
    >
    > Zabrzmialo bardzo interesujaco. Kompletnie nie znam tcl, nigdy nic nie
    > czytalem o nim. Rozumiem ze skoro o tym wspominasz, to chodzi o zupelnie
    > inne i lepsze dla niektorych zastosowan rozszerzenie, niz rozszerzenia
    > typowe dla innych jezykow, jak np.: pisanie nowych procedur i definiowanie
    > nowych typow czy klas?

    Chodzi o to, że w Tclu konstrukcje języka i procedury użytkownika
    wyglądają tak samo.
    Np. nie ma w Tclu pętli while, która zgodnie z resztą gramatyki
    mogłaby wyglądać np. tak:

    while {warunek} {
    cośtamcośtam
    }

    Nie ma, ale to nic, bo można zdefiniować procedurę while z dwoma
    argumentami, którą dokładnie tak można użyć. I nie dość, że nie różni
    się to wizualnie od reszty języka (if, for, itd.), ale nawet z punktu
    widzenia interpretera się nie różni, bo interpreter traktuje wszystkie
    takie konstrukcje tak samo.

    A może chciałbyś takie coś:

    repeat N {
    cośtamcośtam
    }

    Nie ma problemu - znowy procedura z dwoma parametrami.
    A może takie coś:

    loop_forever {
    cośtamcośtam
    }

    Jeszcze prościej, bo to jest procedura z jednym parametrem. Itd.
    W ten sposób można stworzyć język według własnych potrzeb.

    To powyżej to konstrukcje imperatywne, ale to nawet nie jest
    największa zaleta Tcla.
    Zaletę takich rozszerzeń widać wtedy, gdy stworzy się w ten sposób
    język opisu danych - od plików konfiguracyjnych po powiązania logiczne
    czy co tam się chce.
    Wtedy można plik z danymi po prostu *wykonać* w programie a nie np.
    obrywać sobie rękawy przy parsowaniu XMLa czy jeszcze czegoś.

    Niemniej - tak jak już napisałem, to nie jest język do uniwersalnego
    uwielbiania.
    Do uniwersalnego uwielbiania jest Python. Um-cyk-um-cyk... ;-)

    --
    Maciej Sobczak * http://www.msobczak.com * http://www.inspirel.com

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: