Какво означава функционално?
вж. [[функциона̀лен]]
Функционален анализ
Функционалният анализ е дял от математиката, в който се изучава векторните пространства и операторите действащи върху тях. Понятието функционален в името идва от вариационното смятане, където се разглеждат функционали – функции, чиито аргументи са функции. Функционалният анализ дава основа за математическата обосновка на квантовата механика. Редица приложения на функционалния анализ откриваме в математическата физика.
Функционална група
В органичната химия, функционални групи са специални групи от атоми в молекулата, които са отговорни за специфичните химични реакции и свойствата на тази молекула. Еднаквите функционални групи встъпват в еднакви или подобни химични реакции, независимо от големината на молекулата, част от която са.
Реактивоспособността на функционалната както и свойствата на съединението група може бъде повлияна от обкръжаващите функционални групи или структурата на съединението като цяло (дължина на въглеродната верига и пр.). Съединения с една и съща функционална група, но различна дължина на въглеродната верига образуват т.нар. хомоложен ред: напр. алкани, алкохоли, алдехиди, кетони, карбоксилни киселини и т.н.
Пример за влиянието на функционалната група върху химичните и физичните свойства е даден в следната таблица:
Комбинирането на имената на функционалните групи с тези на изходните алкани дава рационална номенклатура за именуване на органичните съединения.
Атомите на функционалната група са свързани помежду си и към цялата молекула посредством ковалентна връзка. Когато групата от атоми е свързана с останалата част от молекулата чрез йонна връзка, говорим за полиатомен йон или комплексен йон. Всички те не наричат „радикал“.
Първият въглероден атом след този, за когото е свързана функционалната група се нарича алфа; вторият бета; третия гама и т.н. При наличието на повече от една функционална група броенето започва от тази, чиито атом заловен за основната верига е с по-голяма атомна маса.
Функционално програмиране
В компютърните науки функционално програмиране е парадигма за програмиране – стил за изграждането на структурата и елементите на компютърни програми, който третира като изчислява оценката на математически функции и избягва променящите състоянието непостоянни данни. Това е декларативна парадигма за програмиране, което означава, че програмирането се извършва с изрази. Във функционален код, изходната стойност на функция зависи само от аргументите, които са вложени по време на функцията, така призованата функция е два пъти с една и съща стойност за един аргумент Х и тя ще произведе същия резултат (Х) всеки път. Премахване на нежелани реакции, т.е. промени в състоянието, което не зависи от входовете на функцията, може да направи много по-лесно разбирането и да се предскаже поведението на една програма, което е един от основните мотиви за развитието на функционално програмиране.
Функционално програмиране има своите корени в ламбда-смятането, което е официална система, разработена през 1930 г., за да разследва изчислимост на дефиниция на функция, приложение функция и рекурсия. Много функционални езици за програмиране могат да бъдат разглеждани като изградени върху ламбда-смятането. Друга добре позната декларативна парадигма за програмиране е логическото програмиране което, се основава на релацията.
За разлика, императивното програмиране променя състоянието, чрез команди в началния език, най-прост пример за това е задачата. Императивното програмиране наистина има функции, не в математическия смисъл, а в смисъл на подпрограми. Те могат да имат странични ефекти, които могат да променят стойността на програмата. Функции без стойности за връщане могат да доведат до това. Поради това, че те нямат референтна прозрачност, т.е. същия израз в друг език може да доведе до различни стойности по различно време в зависимост от състоянието на изпълняващата програмата.
Функционални програмни езици, особено изцяло функционални такива като Hope и Rex, са използвани повече в академичните среди, отколкото в развитието на търговски софтуер. Въпреки това, видни функционални езици за програмиране като Common Lisp, Scheme, Clojure, Language Wolfram Language, Racket, Erlang, OCaml, Haskell, и F# са били използвани в промишлени и търговски заявления от голямо разнообразие от организации. Функционално програмиране се подкрепя и в някои специфични програмни езици за домейн като R, J, K и (programming language from Kx Systems) Q от Kx Systems (финансов анализ), XQuery / XSLT (XML), и Opal. Широко разпространени специфични програмни езици за домейн като SQL и Lex / Yacc използват някои елементи на функционалното програмиране.
Програмиране на функционален стил може да се осъществи в езици, които не са специално предназначени за функционално програмиране. Например, императивния Perl език за програмиране е бил обект на една книга, описваща как да се прилагат концепции на функционалното програмиране. Това е вярно и за езика PHP. C # 3.0 и Java 8 добавят конструкции за улесняване на функционалния стил. Езикът Julia също предлага функционални възможности за програмиране. Интересен случай е този на Scala – често се пише във функционален стил, но присъствието на странични ефекти и непостоянни състояния го провежда в сивата зона между императивни и функционални езици.