Programowanie funkcyjne
Z Wikipedii
Programowanie funkcyjne (lub programowanie funkcjonalne) - filozofia programowania będąca odmianą programowania deklaratywnego, w której funkcje należą do wartości podstawowych, a nacisk kładzie się na wartościowanie (często rekursywnych) funkcji, a nie na wykonywanie poleceń.
Spis treści |
[edytuj] Historia
Podstawą teoretyczną programowania funkcyjnego jest opracowany w latach 30. XX wieku przez Alonzo Churcha rachunek lambda, a dokładnie rachunek lambda z typami.
Pierwszym funkcyjnym językiem programowania był Information Processing Language (IPL) opracowany przez Allena Newella, Cliffa Shawa i Herberta Simona w połowie lat 50. XX wieku dla maszyny JOHNNIAC. Jednakże przełom dla programowania funkcyjnego stanowiło opracowanie przez Johna McCarthy pod koniec lat pięćdziesiątych języka LISP dla maszyn IBM 700/7000. LISP wprowadził wiele cech spotykanych we współczesnych językach programowania. Opracowany w latach 70. język Scheme miał za zadanie uproszczenie i poprawienie języka LISP.
W latach 70. powstały dwa kolejne funkcyjne języki programowania: język ML opracowany przez Robina Milnera na Uniwersytecie w Edynburgu oraz język Miranda opracowany przez Davida Turnera na Uniwersytecie w Kent. Język ML dał początek kilku dialektom, z których najpopularniejsze obecnie to Objective Caml oraz Standard ML. Pod koniec lat 80. został opracowany i ustandaryzowany język programowania Haskell, wywodzący się z języka Miranda.
Jednym z najnowszych języków funkcyjnych jest rozwijany przez firmę Microsoft język F# przeznaczony dla platformy .NET
[edytuj] Podział języków funkcyjnych
Języki funkcyjne można podzielić na dwie grupy:
[edytuj] Języki czysto funkcyjne
Do tej grupy należą języki, w których nie występują zmienne ani efekty uboczne, a wartościowanie jest leniwe.
Wejście/wyjście w takich językach musi się odbywać jakimś alternatywnym mechanizmem, np. za pomocą monad.
Przedstawiciele tej podgrupy to Haskell oraz Clean.
[edytuj] Języki mieszane
Języki tej grupy są popularniejsze niż języki czysto funkcyjne. Umożliwiają one stosowanie zmiennych, pozwalają na efekty uboczne, tradycyjne wejście/wyjście i mieszanie stylu funkcyjnego z imperatywnym bądź obiektowym. Wartościowanie w nich jest przeważnie zachłanne.
Do grupy tej należą LISP z wszystkimi pochodnymi, F# Microsoftu, języki grupy ML (Standard ML, ocaml), tworzony przez polskich studentów język Nemerle, a także języki, w których elementy funkcyjne nie są aż tak ważne, jak Python, Ruby, a nawet do pewnego stopnia Perl.
[edytuj] Linki zewnętrzne
Strony w języku polskim:
- Wykład prowadzony przez Zdzisława Spławskiego na Wydziale Matematyki i Informatyki Uniwersytetu Wrocławskiego
- Programowanie funkcyjne (materiały dydaktyczne MIMUW na studia informatyczne II stopnia)
- Strona prostego funkcyjnego języka programowania
Strony w języku angielskim:
- Strona z informacjami na temat języka Haskell i jego implementacji
- Implementacje języka Scheme oraz środowisko programowania DrScheme
| Pierwszy letni transfer Realu? |
|
Według włoskich mediów pierwszym letnim transferem Realu Madryt ma być obrońca Calcio Catanii Juan Vargas.
|
| ME: kolejne dwie polskie osady w finałach |
|
Marcin Grzybowski w C-1 oraz Wojciech Tyszyński i Paweł Baraszkiewicz w C-2 na 1000 metrów dołączyli do dwóch osad, które już w czwartek wywalczyły awans do finału ME w kajakarstwie klasycznym.
|
| Drzyzga poprowadzi grę wicemistrza Polski? |
|
Wojciech Drzyzga przez wiele lat był podporą reprezentacji Polski, z którą zagrał m.in. na igrzyskach w Moskwie i dwa razy w mistrzostwach świata. Po zakończeniu kariery został trenerem. Prowadził m.in. warszawską Legię i AZS Olsztyn. Obecnie jest cenionym komentatorem telewizyjnym. Jego starszy syn Tomasz jest libero w pierwszoligowej Gwardii Wrocław. Obecnie seniorską karierę rozpoczyna młodszy, ale bardziej utalentowany potomek Wojciecha Drzyzgi - Łukasz - czytamy w "Życiu Warszawy".
|
| Ronaldinho podjął decyzję, "Barca" obniżyła cenę |
|
Według włoskich mediów Ronaldinho, gwiazdor FC Barcelony, poinformował włodarzy klubu, że odejdzie tylko do AC Milan, pomimo zainteresowania ze strony angielskich klubów.
|
| Rusza cykl turniejów Pro-Am |
|
Turnieje Pro-Am to jedne z najbardziej popularnych rodzajów rozgrywek w Polsce. Po raz pierwszy zorganizowano je pięć lat temu i od tego czasu na stałe wpisane są w golfowy kalendarz. W tym roku w skład cyklu wchodzi 6 turniejów. Rywalizują zarówno zawodowcy jak i amatorzy.
|