官术网_书友最值得收藏!

Introducing functional programming

So, functional programming wants you to distribute your programming logic into small pieces of reusable declarative small and pure functions. Distributing your logic into small pieces of code will make the code modular and non-complex, thus you will be able to refactor/change any module/part of the code at any given point without any effects to other modules.

Functional programming requires some interfaces and support from the language, thus we can't say any language is functional unless it gives some sort of support to implement functional programming. However, functional programming isn't something new; it is actually quite an old concept and has several languages supporting it. We call those languages functional programming languages, and the following is a list of some of the most popular functional programming languages:

  • Lisp
  • Clojure
  • Wolfram
  • Erlang
  • OCaml
  • Haskell
  • Scala
  • F#

Lisp and Haskell are some of the oldest languages and are still used today in academia and industry. While talking about Kotlin, it has excellent support for functional programming from its first stable release in contrast to Java, which doesn't have any support for functional programming before Java 8. You can use Kotlin in both object-oriented and functional-programming style or even in a mix of two, which is really a great benefit for us. With a first-class support for features, such as higher-order functions, function types, and lambdas, Kotlin is a great choice if you're doing or exploring functional programming.

The concept of functional reactive programming (FRP) is actually a product of mixing reactive programming with functional programming. The main objective of writing functional programming is to implement modular programming; this modular programming is really helpful, or sometimes a necessity to implement reactive programming or rather to implement the four principles of the Reactive Manifesto.

主站蜘蛛池模板: 玉屏| 长宁区| 新丰县| 新绛县| 迁安市| 武强县| 尼勒克县| 神农架林区| 那曲县| 勐海县| 景泰县| 夏邑县| 金塔县| 江阴市| 峨眉山市| 五大连池市| 名山县| 青岛市| 丹寨县| 台州市| 永康市| 鄂伦春自治旗| 大新县| 视频| 嘉善县| 长兴县| 汝南县| 宜兰市| 福海县| 韩城市| 白水县| 平遥县| 清河县| 西青区| 从化市| 望谟县| 连州市| 闽侯县| 鹿泉市| 江口县| 永城市|