-
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
Następne wpisy z tego wątku
- 17.01.12 11:38 Maciej Sobczak
- 17.01.12 12:44
- 17.01.12 13:42 fir kenobi
- 17.01.12 14:50
- 17.01.12 17:29 Waldek M.
- 17.01.12 18:48 Andrzej Jarzabek
- 17.01.12 19:54
- 17.01.12 20:29
- 17.01.12 21:11 Maciej Sobczak
- 18.01.12 05:44 Andrzej Jarzabek
- 18.01.12 06:52 Maciej Sobczak
- 18.01.12 07:11 M.M.
- 18.01.12 07:51 Artur M. Piwko
- 18.01.12 07:52 Artur M. Piwko
- 18.01.12 08:14 Andrzej Jarzabek
Najnowsze wątki z tej grupy
- 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
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
Najnowsze wątki
- 2025-06-05 Warszawa => Administrator of Systems and Networks <=
- 2025-06-05 Warszawa => Administrator Systemów i Sieci <=
- 2025-06-04 15.000.000 samochodów rocznie nie dojedzie z Katowic do Chorzowa, Bytomia, Tarnowskich Gór
- 2025-06-04 Białystok => Team Lead Data Engineer (Snowflake) <=
- 2025-06-04 Pomór bydła na Białorusi? Kartofli też brakuje...
- 2025-06-04 Warszawa => Operations Support Systems (OSS) Team Leader <=
- 2025-06-04 Tajemnica estakady w Chorzowie ujawniona
- 2025-06-04 Tajemnica estakady w Chorzowie ujawniona
- 2025-06-04 Białystok => Inżynier oprogramowania .Net <=
- 2025-06-04 Rzeszów => International Freight Forwarder <=
- 2025-06-04 Warszawa => Scrum Master <=
- 2025-06-04 Chrzanów => Spedytor Międzynarodowy (handel ładunkami/prowadzenie f
- 2025-06-04 Dziś od rana trwa strajk w zakładzie Jeremias w Gnieźnie.
- 2025-06-04 "W Sosnowcu [sukcesem -przyp. JMJ] zakończył się strajk pracowników firmy Bitron Appliance Poland."
- 2025-06-04 Rzeszów => Spedytor Międzynarodowy <=