-
Data: 2017-01-18 14:46:17
Temat: Re: Czy do nauki języka funkcyjnego (F#, Clojure, Haskell) wymagana jest "wyższa" matematyka?
Od: Maciej Sobczak <s...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]
> Zastanawiam się teraz, czy żeby sprawnie poznać te języki, faktycznie powinienem
ogarniać matematyczny rachunek lambda, matematyczne przekształcanie, "zwijanie" i
"rozwijanie" funkcji itd?
Nie potrzeba znać rachunku lambda, żeby zrozumieć wyjaśnienia i przykłady z
podręcznika czy tutoriala do konkretnego języka programowania. Tak samo jak nie
trzeba znać teorii funkcji z matematyki, żeby zrozumieć, jak działają funkcje w
programowaniu. Ta teoria nawet nie zawsze pomaga, nie mówiąc o tym, że nie zawsze
teoria z lat 50'tych pasuje 1:1 w pojęcia zaimplementowane w konkretnym dzisiejszym
języku.
> Zasadniczo jak się spojrzy na różne książki/przykłady,
Tak. Oprócz lambdy zainteresuje Cię jeszcze taka koncepcje jak domknięcie (zwłaszcza
tzw. upward closure), bo i tak często lambdę robi się właśnie po to, żeby zrobić
domknięcie. Ale pewnie widziałeś już jakiś przykład w tych podręcznikach. Co ciekawe,
domknięcie nie jest pojęciem matematycznym, tylko raczej implementacyjnym i związanym
z zakresem widoczności symboli oraz czasem ich życia, co tym bardziej pokazuje, że
nie ma po co się zbytnio rozwodzić nad "czystą" teorią, bo ostatecznie to nie czysta
teoria wykonuje program.
> ale czy Waszym zdaniem osoba która chce programować w takim F#, OCaml czy Haskellu
powinna wziąć korki z matmy
Obstawiam, że skoro zainteresowałeś się tym tematem, to mógłbyś korki z matmy dawać a
nie brać. :-)
BTW - bardzo ciekawym językiem z tych okolic (tzn. z zacięciem matematycznym) jest
Wolfram:
http://www.wolfram.com/language/video.html
W szczególności w temacie:
http://reference.wolfram.com/language/guide/Function
alProgramming.html
--
Maciej Sobczak * http://www.inspirel.com
Następne wpisy z tego wątku
- 18.01.17 15:37 p...@g...com
Najnowsze wątki z tej grupy
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
- Press Release - AEiC 2023, Ada-Europe Reliable Softw. Technol.
- Ada-Europe - AEiC 2023 early registration deadline approaching
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2023
- Ile cykli zajmuje mnożenie liczb 64-bitowych?
Najnowsze wątki
- 2024-05-15 Warszawa => Key Account Manager <=
- 2024-05-15 Millenium czyli DEBILE bankowości
- 2024-05-15 Warszawa => Frontend Developer - React <=
- 2024-05-15 Marki => ERP Implementer <=
- 2024-05-15 Marki => Wdrożeniowiec ERP <=
- 2024-05-15 System operacyjny dla 6800?
- 2024-05-15 Ulm => IT Netzwerktechniker (m/w/d) <=
- 2024-05-15 Ulm => Technischer Rollouter (d/m/w) <=
- 2024-05-15 Zabrze => Junior HelpDesk <=
- 2024-05-15 Wrocław => Consultant/Implementer Comarch ERP XL <=
- 2024-05-15 Niemcy: "Alles fuer Deutschland" jest zakazane (dla AfD - nieprawomocna grzywna)
- 2024-05-14 Ustawy o rejestracji obcych agentów (wpływu): fuj Gruzja/Rosja v. cacy USA
- 2024-05-14 VMWare :)
- 2024-05-14 Ulm => Solution Engineer (m/w/d) Data Center Technologies <=
- 2024-05-14 Będziemy się znowu zrzucać na elektryki...