-
Data: 2012-01-20 12:02:30
Temat: Re: tcl - do czego to sie moze przydac?
Od: Andrzej Jarzabek <a...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On Jan 20, 9:15 am, Maciej Sobczak <s...@g...com> wrote:
> On Jan 19, 9:53 pm, Andrzej Jarzabek <a...@g...com>
> wrote:
>
> > 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?
Napisałem kilka razy, ale może za mało wyraźnie: nie wypowiadam się o
Pythonie.
> 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.
Ale piszesz tu tylko o nawiaskach klamrowych, a co z [], z
cudzysłowami, i w ogóle co ze składnią wyrażeń.
> Nie da się natomiast wykryć problemów ze skryptem tworzonym w locie,
> ale to jest prawdą w każdym języku dynamicznym.
Nawet jak nie tworzysz skryptów w locie, to raczej ciężko wnioskować
który ze stringów nawet tych zdefiniowanych verbatim będzie używany
jako skrypt lub wyrażenie.
> > 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.
Niby można, ale należałoby w tym celu napisać własny walidator z
własnym parserem tcl-a, co nie jest może jakoś super skomplikowane,
ale też nie takie znowu trywialne.
> Resztą bym się nie przejmował, bo tu analiza 100% nie jest potrzebna
> (jeśli komuś jest potrzebna, to odsyłam do SPARKa).
Jest to tym mniej potrzebne, im mniej używasz konstrukcji typu
procedura dostaje kod w parametrze i go wykonuje. Tylko że tworzenie
takich konstrukcji miało być wielką zaletą tcl-a.
A w innych językach można mieć takie możliwości dzięki closures, które
są dla odmiany normalnym kodem i normalnie mogą być sprawdzone pod
kątem składni przed wykonaniem skryptu.
> > 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.
Nie wypowiadam się o Pythonie. Natomiast w wielu językach dynamicznych
przynajmniej częściowo jest to do zrobienia - np.w Groovym.
Następne wpisy z tego wątku
- 20.01.12 12:32 Andrzej Jarzabek
- 20.01.12 13:31 Roman W
- 20.01.12 13:35 Stachu 'Dozzie' K.
- 20.01.12 13:30 Roman W
- 20.01.12 14:11 A.L.
- 20.01.12 14:35 Andrzej Jarzabek
- 20.01.12 15:50 Roman W
- 20.01.12 15:49 Roman W
- 20.01.12 15:57 Andrzej Jarzabek
- 20.01.12 18:35 Andrzej Jarzabek
Najnowsze wątki z tej grupy
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
Najnowsze wątki
- 2025-01-01 Już nie płoną
- 2025-01-01 Digikey, SN74CBT3253CD, FST3253, ktoś ma?
- 2025-01-01 Co tam u Was
- 2025-01-01 Koder szuka pracy. Koduję w j.: Asembler, C, C++ (z bibl. Qt) i D.
- 2025-01-01 Gdańsk => Delphi Programmer <=
- 2025-01-01 Łódź => Programista Full Stack .Net <=
- 2025-01-01 Żerniki => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-01-01 Wrocław => Specjalista ds. Sprzedaży <=
- 2024-12-31 Warszawa => Spedytor Międzynarodowy <=
- 2024-12-31 Warszawa => Architekt rozwiązań (doświadczenie w obszarze Java, AWS
- 2025-01-01 Przypomnienie: Mini Netykieta polskich grup dyskusyjnych wer. 3.2.2
- 2024-12-31 Zamykanie konta dziecka.
- 2024-12-31 Czy apka bankowa to gra komputerowa?
- 2024-12-31 Szukam: czujnik ruchu z możliwością zaączenia na stałe
- 2024-12-31 Warszawa => Solution Architect (Java background) <=