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-20 09:15:33
    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 19, 9:53 pm, Andrzej Jarzabek <a...@g...com>
    wrote:

    > > Mógłbyś podać przykład, którego nie da się wykryć automatem?
    >
    > Zły kwantyfikator. Takiego przykładu, dla którego nie istnieje automat
    > oczywiście nie ma. Natomiast nie ma też automatu, który by działał dla
    > dowolnego przykładu.

    I, jak rozumiem, w Pythonie jest zupełnie inaczej?

    Jeśli chodzi o wykrycie źle dopasowanych nawiasów, co w Tclu jest
    upierdliwe ze względu na nawiasy w komentarzach, to nie ma z tym
    najmniejszego problemu.
    Nie da się natomiast wykryć problemów ze skryptem tworzonym w locie,
    ale to jest prawdą w każdym języku dynamicznym.

    > > Poprawność składniową można zawsze sprawdzić a w Tclu chyba
    > > najłatwiej, bo ma bardzo prostą gramatykę. Dużo prostszą, niż Python.
    >
    > Tylko w najbardziej trywialnym sensie, tzn. możesz sprawdzić, że skrypt
    > się składa z n poleceń i każde polecenie ma poprawnie składniowo podane
    > parametry. Sprawdzenie poprawności tego, co w innym języku byłoby
    > blokami kodu jest niemożliwe, bo w tcl-u są to po prostu stringi i w
    > ogólnym przypadku nie które z nich powinny być poprawnymi skryptami w tcl.

    Można taką analizę spokojnie określić dla "oczywistych" przypadków:
    if, for, itd.
    Resztą bym się nie przejmował, bo tu analiza 100% nie jest potrzebna
    (jeśli komuś jest potrzebna, to odsyłam do SPARKa).

    > Chodziło mi o sprawdzenie, czy odwołania do symboli odwołują się do
    > symboli rzeczywiście zdefiniowanych, np. nazw procedur czy zmiennych.

    I w Pythonie też nie da się tego zrobić, wystarczy podzielić program
    na pliki i po ptokach - w Pythonie nie ma fazy linkowania, więc nie ma
    mechanizmu, który by zapewnił spójność całości[*].
    Ponownie - jeśli komuś taka analiza jest potrzebna, to polecam języki
    statyczne. One do tego zostały stworzone.

    [*] Ale w Javie też nie ma a to ponoć język statyczny...

    --
    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: