![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
IntroductionBoost , ,
The Phoenix Framework v1.2Preliminary DraftFebruary 2001, Joel de Guzman Функциональное программирование (или FP) набирает обороты, поскольку все больше программистов обнаруживают свою силу. В своей чистой форме парадигмы, как представляется, слишком отделены от того, к чему уже привыкли большинство программистов. С точки зрения C или Pascal императивный программист, например, методы и концепции FP на первый взгляд довольно эзотерические. Изучение чистого языка FP, такого как Haskell, например, требует значительного квантового скачка. FP может восприниматься как методология, которая вовсе не привязана к конкретному языку. FP как дисциплина программирования может применяться ко многим языкам программирования. Например, в области C++ мы видим больше примененных методов FP. C++ достаточно богат, чтобы поддерживать по крайней мере некоторые из наиболее важных аспектов FP, таких как функции более высокого порядка. C++ заслуженно считает себя многопарадигмным языком программирования. Это не только процедурное; оно не только объектно-ориентированное; скрытно под ядром стандартной библиотеки C++, более близкий взгляд на STL дает нам представление о действительно существующей парадигме FP. Очевидно, что авторы STL знают и практикуют FP. В ближайшем будущем мы увидим больше FP в мейнстриме. Конечно. Правда заключается в том, что, хотя FP богат понятиями, новыми и чуждыми типичному программисту C++, нам не нужно перекладывать парадигму полностью оптовой; а скорее на мелкие кусочки одновременно. Фактически, большинство методов FP вполне могут сосуществовать со стандартными объектно-ориентированными и императивными парадигмами программирования. Например, когда мы используем алгоритмы STL и фанкторы, мы уже делаем FP. Феникс расширяет концепции FP на C++ гораздо дальше. Короче говоря, система открывает технологии FP, такие как Lambda (неназванные функции) и Currying (частичная оценка функции).
Copyright © 2001-2002 Joel de Guzman Статья Introduction раздела может быть полезна для разработчиков на c++ и boost. Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: ::
|
|||||||||||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |