eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programming[?] tcl - do czego to sie moze przydac?Re: tcl - do czego to sie moze przydac?
  • 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

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: