-
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
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- 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
Najnowsze wątki
- 2025-01-29 "Zorganizowana Grupa Przestępcza" poczeka na decyzję o ekstradycji z UK na wolności [RARS]
- 2025-01-29 Ostrów Wielkopolski => Area Sales Manager OZE <=
- 2025-01-29 Warszawa => Architekt rozwiązań (doświadczenie w obszarze Java, AWS
- 2025-01-29 Poznań => Konsultant wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-01-29 Poznań => Specjalista ds. Employer Brandingu <=
- 2025-01-29 Warszawa => Developer Microsoft Dynamics 365 Finance & Operations (D36
- 2025-01-29 Warszawa => Junior Rekruter <=
- 2025-01-29 Warszawa => Mid IT Recruiter <=
- 2025-01-29 Białystok => UX Designer <=
- 2025-01-29 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-01-29 Warszawa => Expert Recruiter 360 <=
- 2025-01-29 Zdalny podpis
- 2025-01-29 Nazbyt "muzyczne" słuchawki
- 2025-01-29 Warszawa => QA Engineer <=
- 2025-01-29 Prawo jak je [nie]rząd rozumie.