-
Data: 2012-01-20 09:05:55
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, 11:18 pm, Krzysiek Kowaliczek
<k...@g...com> wrote:
> > A tak przy okazji - masz tu jakieś porównanie z Pythonem? Tzn. GUI w
> > Pythonie z drzewkami/listami na tysiące elementów? Bo skoro zauważasz,
> > że format wskaźnika wpływa na wydajność, to pewnie z czymś ją
> > porównałeś.
>
> A gdzie ja pisałem coś o Pythonie w tym kontekście?
W takim razie się nie kłócę.
Przecież nigdzie nie pisałem, że wskaźnik w formie stringa jest super-
wydajny. Nie jest.
On jest po prostu wygodny przy wypisywaniu na ekran.
> Chodzi właśnie o
> to, aby tych danych między Tcl i C++ przepychać jak najmniej
Można to robić na dwa sposoby - albo przez zmniejszenie tych danych,
albo przez zmniejszenie częstości tej wymiany. Ja preferuję to drugie,
jeśli można tak ukierunkować projekt. Nie przeszkadza mi to, że
przepycham przez granicę kilkadziesiąt bajtów; przeszkadzało by mi,
gdybym to miał robić milion razy na sekundę, bo to by znaczyło, że źle
podzieliłem zadania pomiędzy różne języki.
Jeśli coś ma się dziać często, to nie się dzieje po jednej stronie.
> Panie, ja to bym zamienił całego Tcla nie na Pythona, ale (uwaga!) C+
> +.
Dlaczego "uwaga"? Jeśli GUI ma mieć drzewka/listy na tysiące
elementów, to jest to naturalny wybór.
> W przypadku większych programów, lepszy jest język ze statycznym
> systemem typów.
Oczywiście.
> Po dyskusji to już nie wiem czy uważasz język za gniota, czy
> implementację jego interpretera?
Jedno i drugie. Język to gniot, który wraz ze swoim rozwojem stał się
bardzo skomplikowany będąc jednocześnie monolitycznym i
nierozszerzalnym, natomiast jego interpreter jest zaprojektowany i
napisany po dziadowsku.
Niemniej, doceniam jego biblioteki, nawet jeśli czasem muszę
instalować N wersji Pythona i szukać, w której wersji jakaś potrzebna
mi biblioteka nadaje się do użytku. "Release early, release often" ma
swoje efekty w postaci bugów od lewej do prawej a to wcale nie pomaga
w efektywnym użytkowaniu.
> > Gdybym dzisiaj miał coś robić w tych okolicach, spróbowałbym z
> > językiem Racket.
>
> Z ciekawości, co Cię skłoniło to tego języka?
Nawet nie pamiętam. Chyba chciałem się trochę odświeżyć i (po raz
kolejny) rzucić okiem na Scheme. Doklikałem się do Racket i spodobała
mi się jego dokumentacja, więc ją przeczytałem. Poklikałem,
poeksperymentowałem, spróbowałem też włączyć moduł ładowalny w C++ -
wszystko jest na swoim miejscu. Są wątki i wyjątki, trochę koślawe
klasy[*] i nawet rozbudowany system modułów[**] i różne fajne rzeczy
out-of-the-box typu wyrażenia regularne i takie tam podręczne zabawki,
nawet ładnie zrobione strumienie (ogólnie obsługa I/O). Miło się tego
używa, jeśli przymkniemy oko na nawiasy[***]. Przede wszystkim jest to
język prawdziwie funkcjonalny (a nie "posiada elementy"), więc
faktycznie dobrze działają takie rzeczy jak upward closure.
[*] Nie szkodzie, że są koślawe, bo ustaliliśmy już, że duże systemy
piszemy w statykach. [**] W sumie niepotrzebnie, z tych samych
powodów.
[***] W tym pomaga przyzwoity edytor.
Ogólnie - ładny język, według mnie warty co najmniej rzucenia okiem.
Piątka za staranną i bardzo czytelną dokumentację.
--
Maciej Sobczak * http://www.msobczak.com * http://www.inspirel.com
Następne wpisy z tego wątku
- 20.01.12 09:15 Maciej Sobczak
- 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
- 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-14 granice
- 2025-07-14 Awaria VM?
- 2025-07-14 Gdańsk => Programista Kotlin <=
- 2025-07-14 Warszawa => Junior Rekruter <=
- 2025-07-14 Warszawa => Specjalista rekrutacji IT <=
- 2025-07-14 Wkłady do zniczy...
- 2025-07-14 Warszawa => Specjalista ds. Sprzętu Komputerowego <=
- 2025-07-14 Re: PO chroniło i chroni policyjnych bandziorów [zawiasy za katowanie obywatela (Poznań czerwiec 2012)]
- 2025-07-14 Warszawa => International Freight Forwarder <=
- 2025-07-14 Warszawa => Recruiter 360 <=
- 2025-07-14 Re: Rz?Âd ZAKAZUJE magazyn?Â?w energii ?!! Nowe prawo od 14 lipca to SZOK! ??Â
- 2025-07-14 Warszawa => Sales Assistant <=
- 2025-07-13 Fałszywe alerty
- 2025-07-12 dlaczego gadacie z tym debilem
- 2025-07-13 Unia Europejska przygotowuje nowy podatek