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
  • Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!news.unit
    0.net!news.mixmin.net!aioe.org!.POSTED!not-for-mail
    From: AK <n...@n...net>
    Newsgroups: pl.comp.programming
    Subject: Re: Jaki język polecić początkującemu? - komentarz do artykułu w
    Programista 9/2018
    Date: Mon, 14 Jan 2019 10:29:28 +0100
    Organization: Aioe.org NNTP Server
    Lines: 49
    Message-ID: <q1hkpn$7u5$1@gioia.aioe.org>
    References: <c...@g...com>
    <1...@g...com>
    <8...@g...com>
    <d...@g...com>
    <a...@g...com>
    <c...@g...com>
    <6...@g...com>
    <3...@g...com>
    <a...@g...com>
    <a...@g...com>
    <5...@g...com>
    <q17bsf$1157$1@gioia.aioe.org>
    <c...@g...com>
    <q17fpf$1j06$1@gioia.aioe.org>
    <4...@g...com>
    <q17ltn$fmv$1@gioia.aioe.org>
    <f...@g...com>
    <q1aufn$15m2$1@gioia.aioe.org>
    <3...@g...com>
    NNTP-Posting-Host: MV2AClG/2c9bVI3d/hJi2Q.user.gioia.aioe.org
    Mime-Version: 1.0
    Content-Type: text/plain; charset=utf-8; format=flowed
    Content-Transfer-Encoding: 8bit
    X-Complaints-To: a...@a...org
    User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:60.0) Gecko/20100101
    Thunderbird/60.4.0
    Content-Language: en-GB
    X-Notice: Filtered by postfilter v. 0.8.3
    Xref: news-archive.icm.edu.pl pl.comp.programming:213267
    [ ukryj nagłówki ]

    On 2019-01-14 09:36, Maciej Sobczak wrote:
    > [kolejność ewaluacji]
    > Nie chce mi się sprawdzać dla innych języków, ale nieustalona kolejność ewaluacji
    podwyrażeń jest czymś, co akceptuję jako naturalne,

    A ja nie.
    Ani to naturalne, a (co najgorsze) wprowadza niejednoznacznosc wynikow.
    Wcale tez nie wplywa w zauwazalny sposob na optymalnosc ewaluacji.

    > ale nadal różne od tego:
    >
    > a+b-c
    >
    > vs:
    >
    > a-c+b
    >
    > W pozyższym chcę wiedzieć, że kolejność wykonania jest od lewej do prawej, bo to
    sprawia, że te wyrażenia są jednak różne i mają różną dziedzinę.

    No wiec zeby to wiedziec/byc pewnym w C/C++ zamiast naturalnego:

    d = fun(a) - fun(c) + fun(b);

    musisz to napisac tak:

    typ tmp_a = fun(a);
    typ tmp_c = fun(c);
    typ tmp_b = fun(b);
    d = tmp_a - tmp_c + tmp_b;

    Zadne nawiasowanie (czyli zLispienie C/C++:) typu:
    d = ((fun(a)) - fun(c)) + fun(b);
    Nie pomoze.
    Gorzej! Czasami w niektorych starych kompilatorach
    pomagalo/dzialalo (o ile pamietam w starym MC C++ < 6.0),
    a to dopiero czynilo pasztet, po przeniesieniu takiego kodu
    do nowego czy innego kompilatora :)


    > Niemniej - jedna z rzeczy, które mi się podobają w Adzie to właśnie podział
    podprogramów na procedury i funkcje. Procedur nie da się użyć w wyrażeniu a funkcje
    muszą być w wyrażeniu.

    W Algolu i Simuli bylo podobnie (tyle ze tam w ogole nie uzywano
    nazwy 'funkcja').
    Po prostu funkcje w dzisiejszych jezykach progr. (z wylaczeniem
    funkcyjnych) to nie zadne funkcje, ale wlasnie procedury (zbior/grupa
    akcji/statementow).
    Moze wiec moze to 'stare' 'mocherowe' podejscie bylo lepsze i
    logiczniejsze od dzisiejszej 'Nowoczesnosci' ?

    AK

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: