eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingCo jest nie tak z C++ (było: Rust)Re: Co jest nie tak z C++ (było: Rust)
  • Data: 2018-01-03 12:24:18
    Temat: Re: Co jest nie tak z C++ (było: Rust)
    Od: g...@g...com szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    W dniu środa, 3 stycznia 2018 10:58:12 UTC+1 użytkownik Maciej Sobczak napisał:

    > > Nie do końca rozumiem, co masz na myśli mówiąc o "procesach naturalnych".
    >
    > Takich, które występują w naturze. Wliczamy w to procesy fizyczne, chemiczne, itp.

    A procesy myślowe występują w naturze?
    Czy produkcja samochodów jest procesem występującym w naturze?
    I dlaczego to miałoby być istotne?

    > > Jeżeli mamy kurę, która składa jajko, z którego wykluwa się kura, która
    > > składa jajko, z którego wykluwa się ..., to czy to nie jest proces
    > > reKUREncyjny par excellence?
    >
    > Ciekawy przykład, ale Słońce też wschodzi i zachodzi i znowu wschodzi. Deszcz pada,
    potem woda paruje a potem z tej pary robią się chmury i znowu pada. Itd. Jeśli coś
    się powtarza, to mówimy, że jest to cykl. Pojęcie rekurencji nie jest do tego
    potrzebne ani nie ułatwia rozumienia tych zjawisk. Z jakiegoś powodu wszystkie takie
    zjawisko omawia się w przedszkolach, na szczęście dla przedszkolaków bez rekurencji.

    Jest zasadnicza różnica pomiędzy biologiczną reprodukcją, a obrotem
    słońca dookoła ziemi. Kura tworzy swoje (zmodyfikowane) kopie (co w świecie
    cybernetyki określane jest mianem "autopoiesis"), zaś Słońce cały czas
    jest jedno. Z jakiegoś powodu pytanie "co było pierwsze, kura czy jajko?"
    stanowi dla nas zagwozdkę, zaś pytanie "co było pierwsze, dzień czy noc?"
    już raczej nie. Zauważ również, że w samym tym pytaniu manifestuje się
    myślenie rekurencyjne, czyli potrzeba ustalenia przypadku bazowego
    (którym miałaby być kura albo jajko) i kroku (czyli znoszenie jajka albo
    wykluwanie się, w zależności od tego, na jakim etapie jesteśmy).

    > > Podobnie jest zresztą z opisem języków.
    >
    > Ten przykład jest już ciekawszy. Możesz mnie przekonać, że nawet tak prostą rzecz
    jak wyrażenie arytmetyczne łatwiej opisać pozwalając na rekurencję.
    >
    > > Praktycznie wszystkie
    > > języki programowania opisuje się rekurencyjnie przy pomocy BNF.
    >
    > Języki programowania nie są naturalne. A języków naturalnych nie opisuje się w BNF.
    I tu wracamy do starego argumentu.

    BNF jest wariantem gramatyki bezkontekstowej (typ 3 w hierarchii Chomsky'ego),
    i to stamtąd pochodzi. Choć Chomsky używał aparatury pojęciowej teorii
    informacji, motywacją do rozwinięcia jego teorii było opisywanie języków
    naturalnych właśnie.

    > > Taki opis jest zrozumiały, i nie wydaje się, żebyśmy dysponowali
    > > do tego celu jakimś lepszym narzędziem.
    >
    > W odniesieniu do wielu obecnych języków programowania, zgadzam się - i tam też
    stosuję rozwiązania rekurencyjne.

    Cieszę się.

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: