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
  • X-Received: by 2002:a0c:9e2d:: with SMTP id p45mr151192qve.5.1547454994762; Mon, 14
    Jan 2019 00:36:34 -0800 (PST)
    X-Received: by 2002:a0c:9e2d:: with SMTP id p45mr151192qve.5.1547454994762; Mon, 14
    Jan 2019 00:36:34 -0800 (PST)
    Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.nask.pl!news.nask.org.pl!news.unit
    0.net!feeder.erje.net!1.eu.feeder.erje.net!proxad.net!feeder1-2.proxad.net!209.
    85.160.216.MISMATCH!v55no6280934qtk.0!news-out.google.com!h3ni3832qtk.1!nntp.go
    ogle.com!v55no6280931qtk.0!postnews.google.com!glegroupsg2000goo.googlegroups.c
    om!not-for-mail
    Newsgroups: pl.comp.programming
    Date: Mon, 14 Jan 2019 00:36:34 -0800 (PST)
    In-Reply-To: <q1aufn$15m2$1@gioia.aioe.org>
    Complaints-To: g...@g...com
    Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=165.225.84.86;
    posting-account=bMuEOQoAAACUUr_ghL3RBIi5neBZ5w_S
    NNTP-Posting-Host: 165.225.84.86
    References: <c...@g...com>
    <9...@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>
    User-Agent: G2/1.0
    MIME-Version: 1.0
    Message-ID: <3...@g...com>
    Subject: Re: Jaki język polecić początkującemu? - komentarz do artykułu w
    Programista 9/2018
    From: Maciej Sobczak <s...@g...com>
    Injection-Date: Mon, 14 Jan 2019 08:36:34 +0000
    Content-Type: text/plain; charset="UTF-8"
    Content-Transfer-Encoding: quoted-printable
    Xref: news-archive.icm.edu.pl pl.comp.programming:213262
    [ ukryj nagłówki ]

    [kolejność ewaluacji]

    > Jezyki takie jak Algolu/Simula, Pascalu, Modula2, Fortran, PL/I, Java,
    > Python, C#, VB o to zadbaly. C++ nie.

    Ada też nie. Z tych samych powodów, co C++.
    A ponieważ Ada i Pascal mają wspólne mianowniki, to sprawdziłem z ciekawości dla
    Pascala:

    https://www.freepascal.org/docs-html/ref/refch12.htm
    l

    "
    The order in which expressions of the same precedence are evaluated is not guaranteed
    to be left-to-right. In general, no assumptions on which expression is evaluated
    first should be made in such a case. The compiler will decide which expression to
    evaluate first based on optimization rules. Thus, in the following expression:

    a := g(3) + f(2);
    f(2) may be executed before g(3). This behaviour is distinctly different from Delphi
    or Turbo Pascal.
    "

    Znaczy - nie masz racji co do Pascala, który w obrębie swojej rodziny sam ze sobą
    jest w ten sprawie niespójny. Nie chce mi się sprawdzać dla innych języków, ale
    nieustalona kolejność ewaluacji podwyrażeń jest czymś, co akceptuję jako naturalne,
    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ę.

    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. Język tego nie wymusza, ale naturalnie łatwiej wtedy o
    konwencję, że funkcje robi się "czyste" a procedury zostawia się na te okazje, kiedy
    efekty uboczne są celowe.
    I przy okazji nie ma tego kuriozalnego pół-typu void, bo jest wtedy w ogóle
    niepotrzebny.

    --
    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: