Toggle menu
243,9 tis.
103
18
640,3 tis.
Hrvatska internetska enciklopedija
Toggle preferences menu
Toggle personal menu
Niste prijavljeni
Your IP address will be publicly visible if you make any edits.

Funkcijsko programiranje: razlika između inačica

Izvor: Hrvatska internetska enciklopedija
Bot: Automatski unos stranica
 
m Bot: Automatska zamjena teksta (-{{cite web +{{Citiranje weba)
 
Redak 5: Redak 5:
Funkcijski jezici uključuju [[APL (programski jezik)|APL]], [[Erlang (programski jezik)|Erlang]], [[Haskell (programski jezik)|Haskell]], [[Lisp (programski jezik)|Lisp]], [[ML (programski jezik)|ML]] i [[Scheme (programski jezik)|Scheme]] (u abecednom poretku).
Funkcijski jezici uključuju [[APL (programski jezik)|APL]], [[Erlang (programski jezik)|Erlang]], [[Haskell (programski jezik)|Haskell]], [[Lisp (programski jezik)|Lisp]], [[ML (programski jezik)|ML]] i [[Scheme (programski jezik)|Scheme]] (u abecednom poretku).


Funkcijski [[računalno programiranje|programski]] [[programski jezik|jezici]], napose [[čisti funkcijski|"čisti funkcijski"]], su često istaknuti u akademskoj zajednici, za razliku od komercijalnog razvoja programske podrške. U drugu ruku, istaknuti funkcijski jezici korišteni u industriji i komercijalnim aplikacijama uključuju [[Erlang (programski jezik)|Erlang]] (konkurentne aplikacije),<ref>{{cite web|title=Who uses Erlang for product development?|work=Frequently asked questions about Erlang|url=http://www.erlang.org/faq/t1.html#AEN50|accessdate=2006-06-27}} #''"The largest user of Erlang is (surprise!) Ericsson. Ericsson uses it to #write software used in telecommunications systems. Many (dozens) projects have #used it, a particularly large one is the extremely scalable AXD301 ATM switch.''" Other commercial users listed as part of the FAQ include: Nortel, Deutsche Flugsicherung (the German national air traffic control organisation), and T-Mobile.</ref>, [[R (programski jezik)|R]] (statistika)<ref>[http://www.r-project.org/useR-2006/program.html The useR! 2006 conference schedule includes papers on the commercial use of R]</ref>, [[Mathematica]] (simbolička matematika),<ref>{{cite web|author=Department of Applied Math, University of Colorado|title=Functional vs. Procedural Programming Language|url=http://amath.colorado.edu/computing/mmm/funcproc.html|accessdate=2006-08-28|archiveurl=https://web.archive.org/web/20071113175801/http://amath.colorado.edu/computing/mmm/funcproc.html|archivedate=13. studenoga 2007.}}</ref> [[Haskell (programski jezik)|Haskell]],<ref>{{cite web|title=Haskell and the Linspire Toolchain|url=http://www.galois.com/cufp/|accessdate=9. lipnja 2007.|archiveurl=https://web.archive.org/web/20070314082951/http://www.galois.com/cufp/|archivedate=14. ožujka 2007.}}</ref><ref>{{cite web|title=Why Functional Programming Matters to Credit Suisse|url=http://www.galois.com/cufp/|accessdate=9. lipnja 2007.|archiveurl=https://web.archive.org/web/20070314082951/http://www.galois.com/cufp/|archivedate=14. ožujka 2007.}}</ref> [[ML (programski jezik)|ML]],<ref>{{cite web|title=Caml Trader: Adventures of a Functional Programmer on Wall Street|url=http://www.galois.com/cufp/|accessdate=9. lipnja 2007.|archiveurl=https://web.archive.org/web/20070314082951/http://www.galois.com/cufp/|archivedate=14. ožujka 2007.}}</ref> [[J (programski jezik)|J]] i [[K (programski jezik)|K]] (financijska analiza), te [[domenski-specifičan programski jezik|domenski-specifične programske jezike]] kao što je [[XSLT]].<ref>{{cite web | url=http://www.topxml.com/xsl/articles/fp/ | author=Dimitre Novatchev | title=The Functional Programming Language XSLT - A proof through examples | accessdate=May 27 | accessyear=2006 | work=TopXML}}</ref><ref>{{cite web| url=http://gnosis.cx/publish/programming/xml_models_fp.html | author=David Mertz | title=XML Programming Paradigms (part four): Functional Programming approached to XML processing | accessdate=May 27 | accessyear=2006 | work=IBM developerWorks}}</ref>
Funkcijski [[računalno programiranje|programski]] [[programski jezik|jezici]], napose [[čisti funkcijski|"čisti funkcijski"]], su često istaknuti u akademskoj zajednici, za razliku od komercijalnog razvoja programske podrške. U drugu ruku, istaknuti funkcijski jezici korišteni u industriji i komercijalnim aplikacijama uključuju [[Erlang (programski jezik)|Erlang]] (konkurentne aplikacije),<ref>{{Citiranje weba|title=Who uses Erlang for product development?|work=Frequently asked questions about Erlang|url=http://www.erlang.org/faq/t1.html#AEN50|accessdate=2006-06-27}} #''"The largest user of Erlang is (surprise!) Ericsson. Ericsson uses it to #write software used in telecommunications systems. Many (dozens) projects have #used it, a particularly large one is the extremely scalable AXD301 ATM switch.''" Other commercial users listed as part of the FAQ include: Nortel, Deutsche Flugsicherung (the German national air traffic control organisation), and T-Mobile.</ref>, [[R (programski jezik)|R]] (statistika)<ref>[http://www.r-project.org/useR-2006/program.html The useR! 2006 conference schedule includes papers on the commercial use of R]</ref>, [[Mathematica]] (simbolička matematika),<ref>{{Citiranje weba|author=Department of Applied Math, University of Colorado|title=Functional vs. Procedural Programming Language|url=http://amath.colorado.edu/computing/mmm/funcproc.html|accessdate=2006-08-28|archiveurl=https://web.archive.org/web/20071113175801/http://amath.colorado.edu/computing/mmm/funcproc.html|archivedate=13. studenoga 2007.}}</ref> [[Haskell (programski jezik)|Haskell]],<ref>{{Citiranje weba|title=Haskell and the Linspire Toolchain|url=http://www.galois.com/cufp/|accessdate=9. lipnja 2007.|archiveurl=https://web.archive.org/web/20070314082951/http://www.galois.com/cufp/|archivedate=14. ožujka 2007.}}</ref><ref>{{Citiranje weba|title=Why Functional Programming Matters to Credit Suisse|url=http://www.galois.com/cufp/|accessdate=9. lipnja 2007.|archiveurl=https://web.archive.org/web/20070314082951/http://www.galois.com/cufp/|archivedate=14. ožujka 2007.}}</ref> [[ML (programski jezik)|ML]],<ref>{{Citiranje weba|title=Caml Trader: Adventures of a Functional Programmer on Wall Street|url=http://www.galois.com/cufp/|accessdate=9. lipnja 2007.|archiveurl=https://web.archive.org/web/20070314082951/http://www.galois.com/cufp/|archivedate=14. ožujka 2007.}}</ref> [[J (programski jezik)|J]] i [[K (programski jezik)|K]] (financijska analiza), te [[domenski-specifičan programski jezik|domenski-specifične programske jezike]] kao što je [[XSLT]].<ref>{{Citiranje weba | url=http://www.topxml.com/xsl/articles/fp/ | author=Dimitre Novatchev | title=The Functional Programming Language XSLT - A proof through examples | accessdate=May 27 | accessyear=2006 | work=TopXML}}</ref><ref>{{Citiranje weba| url=http://gnosis.cx/publish/programming/xml_models_fp.html | author=David Mertz | title=XML Programming Paradigms (part four): Functional Programming approached to XML processing | accessdate=May 27 | accessyear=2006 | work=IBM developerWorks}}</ref>


[[Lambda račun]] je osnovica većine modela funkcijskog programiranja.
[[Lambda račun]] je osnovica većine modela funkcijskog programiranja.

Posljednja izmjena od 17. studeni 2021. u 22:18

Funkcijsko programiranje je programska paradigma koja tretira računanje kao evaluaciju matematičkih funkcija i izbjegava stanje i mutabilne podatke. Naglašava primjenu funkcija, kao suprotnost stilu imperativnog programiranja koji naglašava promjene u stanju.[1]

Šira koncepcija funkcijskog programiranja jednostavno definira skup zajedničkih briga i tema mjesto popisa distinkcija od ostalih paradigmi. Često se važnima smatraju funkcije višeg reda i prvorazredne funkcije, zatvaranja i rekurzija. Druga uobičajena svojstva funkcijskih programskih jezika su kontinuacije, Hindley-Milner sustavi inference tipova, nestriktne evaluacijske strategije (uključujući i "lijenost") te monade.

Funkcijski jezici uključuju APL, Erlang, Haskell, Lisp, ML i Scheme (u abecednom poretku).

Funkcijski programski jezici, napose "čisti funkcijski", su često istaknuti u akademskoj zajednici, za razliku od komercijalnog razvoja programske podrške. U drugu ruku, istaknuti funkcijski jezici korišteni u industriji i komercijalnim aplikacijama uključuju Erlang (konkurentne aplikacije),[2], R (statistika)[3], Mathematica (simbolička matematika),[4] Haskell,[5][6] ML,[7] J i K (financijska analiza), te domenski-specifične programske jezike kao što je XSLT.[8][9]

Lambda račun je osnovica većine modela funkcijskog programiranja.

Izvori

  1. Hudak, Paul (rujan 1989). "Conception, evolution, and application of functional programming languages". ACM Computing Surveys 21 (3): 359-411. Inačica izvorne stranice arhivirana 20. ožujka 2009.. http://www.cs.berkeley.edu/~jcondit/pl-prelim/hudak89functional.pdf Pristupljeno 9. lipnja 2007. 
  2. "Who uses Erlang for product development?". Frequently asked questions about Erlang. http://www.erlang.org/faq/t1.html#AEN50 Pristupljeno 27. lipanj 2006.  #"The largest user of Erlang is (surprise!) Ericsson. Ericsson uses it to #write software used in telecommunications systems. Many (dozens) projects have #used it, a particularly large one is the extremely scalable AXD301 ATM switch." Other commercial users listed as part of the FAQ include: Nortel, Deutsche Flugsicherung (the German national air traffic control organisation), and T-Mobile.
  3. The useR! 2006 conference schedule includes papers on the commercial use of R
  4. Department of Applied Math, University of Colorado. "Functional vs. Procedural Programming Language". Inačica izvorne stranice arhivirana 13. studenoga 2007.. http://amath.colorado.edu/computing/mmm/funcproc.html Pristupljeno 28. kolovoz 2006. 
  5. "Haskell and the Linspire Toolchain". Inačica izvorne stranice arhivirana 14. ožujka 2007.. http://www.galois.com/cufp/ Pristupljeno 9. lipnja 2007. 
  6. "Why Functional Programming Matters to Credit Suisse". Inačica izvorne stranice arhivirana 14. ožujka 2007.. http://www.galois.com/cufp/ Pristupljeno 9. lipnja 2007. 
  7. "Caml Trader: Adventures of a Functional Programmer on Wall Street". Inačica izvorne stranice arhivirana 14. ožujka 2007.. http://www.galois.com/cufp/ Pristupljeno 9. lipnja 2007. 
  8. Dimitre Novatchev. "The Functional Programming Language XSLT - A proof through examples". TopXML. http://www.topxml.com/xsl/articles/fp/ Pristupljeno 27 svibanj 
  9. David Mertz. "XML Programming Paradigms (part four): Functional Programming approached to XML processing". IBM developerWorks. http://gnosis.cx/publish/programming/xml_models_fp.html Pristupljeno 27 svibanj 
Sadržaj