Функційне програмування: відмінності між версіями

[неперевірена версія][перевірена версія]
Вилучено вміст Додано вміст
м →‎Чисті функції: вікіфікація
Рядок 58:
* Якщо вся мова не допускає побічних ефектів, то можна використовувати будь-яку політику обчислення. Це надає свободу компілятору комбінувати і реорганізовувати обчислення виразів у програмі (наприклад, виключити деревоподібні структури).
 
Хоча більшість компіляторів імперативних мов програмування розпізнають чисті функції і видаляють загальні подвираженія для викликів чистих функцій, вони не можуть робити це завжди для попередньо скомпільованих бібліотек, які, як правило, не надають цю інформацію. Деякі компілятори, такі як [[GNU Compiler Collection | gcc]], з метою оптимізації надають програмісту ключові слова для позначення чистих функцій <ref> [http://gcc.gnu.org/onlinedocs/gcc/Function-Attributes.html GCC , Declaring Attributes of Functions] </ref>. [[Фортран|Fortran 95]] дозволяє позначати функції як «pure»<ref> XL Fortran for AIX, V13.1> Language Reference, Pure procedures (Fortran 95)] </ref>.
 
=== Рекурсія ===