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

Declarative programming

Let's go back to the real-life imperative example, where we gave directions to a friend on how to get to a place. When we think in terms of the declarative programming paradigm, instead of telling our friend how to get to the specific location, we can simply give him the address and let him figure out how to get there. In this case, we tell him what to do and we don't really care if he uses a map or a GPS, or if he asks somebody for instructions: Be at the junction between Fifth Avenue and Ninth Avenue at 9:30 in the morning.

As opposed to imperative programming, declarative programming is a programming paradigm that specifies what a program should do, without specifying how to do it. Among the purely declarative languages are database query languages, such as SQL and XPath, and regular expressions.

Declarative programming languages are more abstract compared to imperative ones. They don't mimic the hardware structure, and, as a consequence, they don't change the programs' states but transform them to new states, and are closer to mathematical logic.

In general, the programming styles that are not imperative are considered to fall in the declarative category. This is why there are many types of paradigms that fall under the declarative category. In our quest, we will look at the only one that is relevant to the scope of our journey: functional programming.

主站蜘蛛池模板: 平利县| 邢台县| 临城县| 昭觉县| 海安县| 沅江市| 台东县| 涿鹿县| 石楼县| 红原县| 旬邑县| 阳高县| 菏泽市| 德阳市| 武夷山市| 双峰县| 厦门市| 金坛市| 大城县| 理塘县| 汤原县| 波密县| 霍山县| 日喀则市| 武夷山市| 加查县| 乡宁县| 长春市| 蕲春县| 南皮县| 宝丰县| 改则县| 寿宁县| 揭阳市| 措勤县| 纳雍县| 呼和浩特市| 镇安县| 云阳县| 遂宁市| 洪江市|