eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingJaki język polecić początkującemu? - komentarz do artykułu w Programista 9/2018 › Re: Jaki język polecić początkującemu? - komentarz do artykułu w Programista 9/2018
  • Data: 2018-12-30 00:21:15
    Temat: Re: Jaki język polecić początkującemu? - komentarz do artykułu w Programista 9/2018
    Od: Maciej Sobczak <s...@g...com> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    > > [operator przypisania]
    > >
    > > > W większości miejsc nie jest konieczne.
    > > > A jest to zły nawyk, ponieważ - mówiąc skrótowo - zwiększa złożoność
    > > > środków analizy programów
    > >
    > > Nie, nie zwiększa.
    >
    > Owszem, zwiększa.

    To tak, jakbyś powiedział, że silnik zwiększa koszt samochodu.
    Otóż nie zwiększa, bo jest jego integralną częścią. Klima albo automat może
    zwiększać, ale nie silnik.
    Podobnie jest z operatorem przypisania w językach imperatywnych. On niczego nie
    zwiększa, bo nie może go nie być.

    > Proponuję, żebyś - zamiast zgadywać w ciemno o czym mówię
    > - spróbował przeczytać tę książkę, i dopiero wtedy się
    > wypowiedzieć.

    Czytałem. Tylko jakoś nie uległem czarowi języków funkcjonalnych do tego stopnia,
    żeby uznać je jako teoretyczną podstawę do czegokolwiek.
    I mam wrażenie (również z poprzednich naszych dyskusji), że tak właśnie sądzisz - że
    języki funkcjonalne są podstawą, z której można budować inne konstrukcje. Dlatego
    zastanawiasz się, jaki jest koszt dodania operatora przypisania.
    Tymczasem w informatyce, jeżeli w ogóle jest jakaś podstawa dla innych konstrukcji,
    to zwyczajowo była nią maszyna Turinga (i nie widzę powodu, żeby miała stracić ten
    status) a akurat tam jest już koncepcja modyfikacji wartości. Głowica zapisująca nową
    wartość w tym samym miejscu to właśnie operator przypisania.
    W tym kontekście zamiast pytać, jaki jest koszt dodania operatora przypisania do
    czegokolwiek, należałoby zapytać, jaki jest koszt udawania, że go może nie być.
    Otóż ten koszt to jest między innymi ta dyskusja. :-)

    > To dobra książka, naprawdę.

    https://cemerick.com/2009/03/24/why-mit-now-uses-pyt
    hon-instead-of-scheme-for-its-undergraduate-cs-progr
    am/

    Wracając do tematu: jeżeli operator przypisania jest problemem w Scheme, to jest to
    problem w Scheme. W językch imperatywnych ten operator nie jest problemem, tylko
    integralną częścią języka. A narzędzi analitycznych to w ogóle nie komplikuje,
    naprawdę.

    > > Nadal nie wiem, czy trzeba zmienić język, żeby pisać lepiej.
    >
    > Też nie wiem. Ale jeżeli idzie o mnie, to nie umiem pisać
    > w C++ kodu tak, żeby być z niego zadowolonym.

    Mi się zdarzyło. Natomiast przyznam, że moje własne niezadowolenie z języka C++
    skierowało mnie ku nauce Ady. I paradoksalnie, mój C++ się wtedy też poprawił.

    > Wydaje mi się, że pytanie "czy C++ jest dobry do nauki"
    > to trochę mało. Raczej należałoby zapytać, czy dane materiały
    > dydaktyczne są dobre, albo czy określona metodologia nauczania
    > jest skuteczna.

    Tak, to prawda. Ale znam ludzi, którzy twardo stosują C++ jako platformę do nauki
    programowania i struktur danych. Myślę, że przy odpowiednim prowadzeniu to nie jest
    zły pomysł.
    Ale sam osobiście poleciłbym nowicjuszom język Wolfram. Również dzieciom, jak im się
    już Scratch znudził. C++ nie jest dobrym pierwszym językiem, chociaż może być bardzo
    praktycznym językiem w późniejszej pracy czy innym realnym projekcie.

    --
    Maciej Sobczak * 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: