-
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
Następne wpisy z tego wątku
- 20.01.12 09:52 Stachu 'Dozzie' K.
- 20.01.12 12:02 Andrzej Jarzabek
- 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
- 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
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
- Press Release - AEiC 2023, Ada-Europe Reliable Softw. Technol.
- Ada-Europe - AEiC 2023 early registration deadline approaching
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2023
- Ile cykli zajmuje mnożenie liczb 64-bitowych?
Najnowsze wątki
- 2024-06-27 Re: Prywatny parking? Pierwsze 10 minut bezplatnie
- 2024-06-27 A co mnie to koooorwa obchodzi?
- 2024-06-28 nawigacja satelitarna
- 2024-06-28 SmartLife/Tuya i osuszanie -- mordowanie z zimną krwią...
- 2024-06-27 położyłem kafelki
- 2024-06-28 Łódź => International Freight Forwarder <=
- 2024-06-28 Łódź => Spedytor Międzynarodowy <=
- 2024-06-28 Gdańsk => Head of International Freight Forwarding Department <=
- 2024-06-28 Sopot => Team Leader E-Commerce for Foreign Markets <=
- 2024-06-28 Warszawa => Senior React Native Developer <=
- 2024-06-28 Warszawa => Frontend Developer (React) <=
- 2024-06-28 Warszawa => Software .Net Developer <=
- 2024-06-28 Warszawa => Frontend Developer (React) <=
- 2024-06-28 Warszawa => Programista Full Stack .Net <=
- 2024-06-28 Warszawa => Frontend Developer (React) <=