eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingOptymalizacja struktur danych dla programów funkcyjnych › Re: Optymalizacja struktur danych dla programów funkcyjnych
  • Data: 2017-10-05 13:48:57
    Temat: Re: Optymalizacja struktur danych dla programów funkcyjnych
    Od: Maciej Sobczak <s...@g...com> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    > > Ale nie ustaliliśmy jeszcze, co to znaczy, że program jest czysto funkcyjny.
    >
    > Z tego co patrzę na historię tej rozmowy, ustaliliśmy to na dość
    > wczesnym etapie.

    Bez przesady. Nawet nie podałeś definicji, tylko przykład, z którym ja się nie
    zgodziłem. To mi się nie kwalifikuje jako "ustaliliśmy".

    > > Jeżeli istotą jest przetwarzanie wejścia na wyjście, to wszystkie programy w
    istocie takie są. Natomiast jeśli jest nią generowanie efektów ubocznych, to też
    wszystkie takie są.
    >
    > Otóż właśnie nie, na co również dawałem przykłady.

    Bez wejścia program nie ma danych do przetwarzania (albo ma zawsze te same, co jest
    nieciekawe), bez wyjścia nie ma wyników (co też jest nieciekawe), a bez efektów
    ubocznych nie może się komunikować (co też jest nieciekawe). Nie podałeś żadnego
    przykładu, który by się z tych reguł wyłamywał.

    Ogólnie, oodwoływanie się do takich pojęć jak "istota czegoś" jest trochę...
    nieinżynierskie.

    > Problem polega na tym, że mylisz w tej chwili istotę programu

    No i znowu ta istota. Z ciekawości wpisałem w wyszukiwarkę i... nic. Ani w wikipedii,
    ani nigdzie indziej. Po angielsku to pewnie "the essence of the program" i... znowu
    nic.

    Skoro to pojęcie nigdzie nie jest zdefiniowane i nikt go w branży nie używa, to chyba
    nie świadczy o mnie bardzo źle, że *nadal* nie rozumiem, o co konkretnie chodzi?

    > Owszem, każdy program można analizować przy pomocy pojęcia funkcji,
    > albo przy pomocy pojęcia maszyny stanu, albo czegoś jeszcze innego.

    Tak. Dlatego pojęcie "czysto funkcyjny" nie ma sensu.

    > Projektanci kompilatorów muszą zwracać
    > uwagę na zupełnie inne rzeczy, niż projektanci gier komputerowych albo
    > stron internetowych, po w pierwszym przypadku kluczowy jest wynik, a w
    > pozostałych -- interakcja.

    Tak, i stosuje się różne metody do optymalizacji tych różnych celów. Ale nic nie jest
    "czyste", bo bez interakcji nie da się pobrać danych ani podać wyników a bez wyniku
    interakcja jest bezcelowa - a przez proste zmiany w formacie i sposobie uruchomienia
    można zmienić jeden rodzaj programu w drugi. I o braku tej "czystości" właśnie tu
    piszę.

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