Functional programming
Functional programming is a programming paradigm that treats computation as the evaluation of mathematical functions and avoids changing-state and mutable data. It emphasizes the application of functions, in contrast to the imperative programming paradigm, which emphasizes changes in state.
History[edit]
Functional programming has its roots in lambda calculus, a formal system developed in the 1930s to investigate function definition, function application, and recursion. Many functional programming languages can be viewed as elaborations on the lambda calculus. In the 1950s, the first functional programming language, Lisp, was created by John McCarthy at the Massachusetts Institute of Technology (MIT).
Concepts[edit]
Functional programming languages are typically designed around the following key concepts:
First-class and higher-order functions[edit]
In functional programming, functions are first-class citizens, meaning that they can be passed as arguments to other functions, returned as values from other functions, and assigned to variables. Higher-order functions are functions that take other functions as their arguments or return them as results.
Pure functions[edit]
A function is called pure if it always returns the same result given the same arguments (it is deterministic) and does not cause any observable side effects (such as modifying a global object or a variable).
Immutability[edit]
Functional programming languages favor immutable data structures. Once created, data structures are never changed in place. If a change is needed, a new data structure is created instead. This can help avoid issues of data changes in a multi-threaded environment and leads to easier reasoning about program behavior.
Recursion[edit]
Functional languages primarily rely on recursion to perform looping or iterative behavior, as opposed to the typical loop constructs seen in imperative languages.
Lazy evaluation[edit]
Lazy evaluation is an evaluation strategy which delays the evaluation of an expression until its value is actually needed. This can help improve performance and allows the creation of infinite data structures.
Languages[edit]
Some well-known functional programming languages include Haskell, Scheme, Clojure, and Erlang. Each of these languages emphasizes different aspects of functional programming.
Applications[edit]
Functional programming is particularly useful in scenarios where immutability, concurrency, and determinism are important. It is widely used in academic settings and industries such as finance, where precise algorithms are critical. Additionally, functional programming concepts have influenced the development of many modern programming languages, including JavaScript, Python, and Ruby.
See also[edit]
Further reading[edit]
- Structure and Interpretation of Computer Programs
- Purely Functional Data Structures

This article is a computer science stub. You can help WikiMD by expanding it!
Ad. Transform your life with W8MD's Budget GLP-1 injections from $75


W8MD offers a medical weight loss program to lose weight in Philadelphia. Our physician-supervised medical weight loss provides:
- Weight loss injections in NYC (generic and brand names):
- Zepbound / Mounjaro, Wegovy / Ozempic, Saxenda
- Most insurances accepted or discounted self-pay rates. We will obtain insurance prior authorizations if needed.
- Generic GLP1 weight loss injections from $75 for the starting dose.
- Also offer prescription weight loss medications including Phentermine, Qsymia, Diethylpropion, Contrave etc.
NYC weight loss doctor appointmentsNYC weight loss doctor appointments
Start your NYC weight loss journey today at our NYC medical weight loss and Philadelphia medical weight loss clinics.
- Call 718-946-5500 to lose weight in NYC or for medical weight loss in Philadelphia 215-676-2334.
- Tags:NYC medical weight loss, Philadelphia lose weight Zepbound NYC, Budget GLP1 weight loss injections, Wegovy Philadelphia, Wegovy NYC, Philadelphia medical weight loss, Brookly weight loss and Wegovy NYC
|
WikiMD's Wellness Encyclopedia |
| Let Food Be Thy Medicine Medicine Thy Food - Hippocrates |
Medical Disclaimer: WikiMD is not a substitute for professional medical advice. The information on WikiMD is provided as an information resource only, may be incorrect, outdated or misleading, and is not to be used or relied on for any diagnostic or treatment purposes. Please consult your health care provider before making any healthcare decisions or for guidance about a specific medical condition. WikiMD expressly disclaims responsibility, and shall have no liability, for any damages, loss, injury, or liability whatsoever suffered as a result of your reliance on the information contained in this site. By visiting this site you agree to the foregoing terms and conditions, which may from time to time be changed or supplemented by WikiMD. If you do not agree to the foregoing terms and conditions, you should not enter or use this site. See full disclaimer.
Credits:Most images are courtesy of Wikimedia commons, and templates, categories Wikipedia, licensed under CC BY SA or similar.
Translate this page: - East Asian
中文,
日本,
한국어,
South Asian
हिन्दी,
தமிழ்,
తెలుగు,
Urdu,
ಕನ್ನಡ,
Southeast Asian
Indonesian,
Vietnamese,
Thai,
မြန်မာဘာသာ,
বাংলা
European
español,
Deutsch,
français,
Greek,
português do Brasil,
polski,
română,
русский,
Nederlands,
norsk,
svenska,
suomi,
Italian
Middle Eastern & African
عربى,
Turkish,
Persian,
Hebrew,
Afrikaans,
isiZulu,
Kiswahili,
Other
Bulgarian,
Hungarian,
Czech,
Swedish,
മലയാളം,
मराठी,
ਪੰਜਾਬੀ,
ગુજરાતી,
Portuguese,
Ukrainian