-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.glorb.com!
postnews.google.com!18g2000vbx.googlegroups.com!not-for-mail
From: Andrzej Jarzabek <a...@g...com>
Newsgroups: pl.comp.programming
Subject: Re: tcl - do czego to sie moze przydac?
Date: Fri, 20 Jan 2012 04:02:30 -0800 (PST)
Organization: http://groups.google.com
Lines: 77
Message-ID: <c...@1...googlegroups.com>
References: <jes1u9$jfu$1@inews.gazeta.pl>
<7...@a...googlegroups.com>
<jf3amr$47o$1@inews.gazeta.pl>
<3...@w...googlegroups.com>
<jf4fpk$rki$1@inews.gazeta.pl>
<5...@w...googlegroups.com>
<jf5m72$rn1$1@inews.gazeta.pl>
<c...@l...googlegroups.com>
<jf5v0e$j6e$1@inews.gazeta.pl>
<7...@4...com>
<3563330.3613.1326892576038.JavaMail.geo-discussion-forums@vby1>
<e...@c...googlegroups.com>
<9...@1...googlegroups.com>
<8...@t...googlegroups.com>
<jf9vsr$3hm$1@inews.gazeta.pl>
<a...@w...googlegroups.com>
NNTP-Posting-Host: 195.11.67.225
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: quoted-printable
X-Trace: posting.google.com 1327061044 29277 127.0.0.1 (20 Jan 2012 12:04:04 GMT)
X-Complaints-To: g...@g...com
NNTP-Posting-Date: Fri, 20 Jan 2012 12:04:04 +0000 (UTC)
Complaints-To: g...@g...com
Injection-Info: 18g2000vbx.googlegroups.com; posting-host=195.11.67.225;
posting-account=jr5y-woAAAAWidgVjrSJ6j8m650CTb-v
User-Agent: G2/1.0
X-Google-Web-Client: true
X-Google-Header-Order: CUHARLSENK
X-HTTP-UserAgent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.7 (KHTML, like
Gecko) Chrome/16.0.912.75 Safari/535.7,gzip(gfe)
Xref: news-archive.icm.edu.pl pl.comp.programming:194821
[ ukryj 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
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
Najnowsze wątki
- 2025-07-03 Trybik
- 2025-07-04 Renault Symbioz
- 2025-07-04 Architektura IIIRP: Wyjątkowa, a prymitywniejsza niż stodoła pod zaborami
- 2025-07-04 Warszawa => International Freight Forwarder <=
- 2025-07-04 Wrocław => SAP ABAP Developer <=
- 2025-07-04 Warszawa => Mid/Senior IT Recruiter <=
- 2025-07-04 Białystok => Kotlin Developer <=
- 2025-07-04 Bieruń => Spedytor Międzynarodowy (handel ładunkami/prowadzenie flo
- 2025-07-04 Warszawa => Specjalista wsparcia IT - analiza techniczna sprzętu IT <
- 2025-07-04 Zakrzewo => Konsultant SAP HCM <=
- 2025-07-04 Łódź => Programista Mainframe (z/OS, Assembler) <=
- 2025-07-04 Szczecin => Key Account Manager IT <=
- 2025-07-04 Warszawa => Technik IT - Konfiguracja i Wsparcie Sprzętowe <=
- 2025-07-04 Warszawa => Technique IT - Hardware Configuration and Support <=
- 2025-07-04 Warszawa => Specjalista ds. Sprzętu IT i Wsparcia Technicznego <=