{"id":258,"date":"2011-12-03T01:35:01","date_gmt":"2011-12-02T18:35:01","guid":{"rendered":"http:\/\/nvntung.wordpress.com\/?p=258"},"modified":"2015-10-14T10:49:41","modified_gmt":"2015-10-14T08:49:41","slug":"functional-programming","status":"publish","type":"post","link":"https:\/\/www.itersdesktop.com\/fr\/2011\/12\/03\/functional-programming\/","title":{"rendered":"Programmation functionale"},"content":{"rendered":"<p>L\u1eadp tr\u00ecnh h\u00e0m l\u00e0 m\u1ed9t ki\u1ec3u l\u1eadp tr\u00ecnh m\u00e0 t\u00ednh to\u00e1n c\u00e1c m\u00f4 h\u00ecnh nh\u01b0 l\u00e0 \u01b0\u1edbc t\u00ednh c\u00e1c bi\u1ec3u th\u1ee9c. \u0110\u1ec3 hi\u1ec3u r\u00f5 v\u1ec1 l\u1eadp tr\u00ecnh h\u00e0m, b\u1ea1n n\u00ean b\u1eaft tay v\u00e0o vi\u1ec7c h\u1ecdc m\u1ed9t ng\u00f4n ng\u1eef n\u00e0o \u0111\u00f3 c\u00f3 h\u1ed7 tr\u1ee3 ki\u1ec3u l\u1eadp tr\u00ecnh h\u00e0m nh\u01b0 Common Lisp, Ocaml hay Haskell.<br \/>\nTrong l\u1eadp tr\u00ecnh h\u00e0m, c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh \u0111\u01b0\u1ee3c th\u1ef1c thi b\u1eb1ng vi\u1ec7c \u01b0\u1edbc t\u00ednh c\u00e1c bi\u1ec3u th\u1ee9c, \u0111i\u1ec1u n\u00e0y ng\u01b0\u1ee3c v\u1edbi ki\u1ec3u l\u1eadp tr\u00ecnh m\u1ec7nh l\u1ec7nh (imperative programming) m\u00e0 \u1edf \u0111\u00f3 ch\u01b0\u01a1ng tr\u00ecnh bao g\u1ed3m nhi\u1ec1u c\u00e2u l\u1ec7nh thay \u0111\u1ed5i tr\u1ea1ng th\u00e1i to\u00e0n c\u1ee5c khi ch\u1ea1y ch\u01b0\u01a1ng tr\u00ecnh. V\u1edbi ki\u1ec3u l\u1eadp tr\u00ecnh h\u00e0m ch\u00fang ta tr\u00e1nh \u0111\u01b0\u1ee3c \u0111i\u1ec1u n\u00e0y nh\u1edd s\u1eed d\u1ee5ng c\u01a1 ch\u1ebf bi\u1ebfn \u0111\u1ed5i tr\u1ea1ng th\u00e1i (mutable state).<\/p>\n<p>L\u1eadp tr\u00ecnh h\u00e0m \u0111\u00f2i h\u1ecfi t\u00ean h\u00e0m \u0111i tr\u01b0\u1edbc ti\u00ean, ngh\u0129a l\u00e0 ch\u00fang \u0111\u01b0\u1ee3c x\u1eed l\u00fd gi\u1ed1ng nh\u01b0 c\u00e1c gi\u00e1 tr\u1ecb kh\u00e1c v\u00e0 c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c truy\u1ec1n nh\u01b0 l\u00e0 tham s\u1ed1 cho c\u00e1c h\u00e0m kh\u00e1c ho\u1eb7c tr\u1ea3 v\u1ec1 nh\u01b0 m\u1ed9t k\u1ebft qu\u1ea3 c\u1ee7a m\u1ed9t h\u00e0m. H\u00e0m l\u00e0 \u0111\u01a1n v\u1ecb ch\u00ednh \u0111\u1ec3 x\u00e2y d\u1ef1ng c\u00e1c ch\u01b0\u01a1ng tr\u00ecnh.<\/p>\n<h2>Tham kh\u1ea3o<\/h2>\n<p>[1] <a href=\"http:\/\/www.staff.science.uu.nl\/~fokke101\/courses\/fp-eng.pdf\">http:\/\/www.staff.science.uu.nl\/~fokke101\/courses\/fp-eng.pdf<\/a><\/p>\n<p>[2]\u00a0<a href=\"http:\/\/www-typo3.cs.ucl.ac.uk\/students\/syllabus\/msccs\/gc16_functional_programming\/\">http:\/\/www-typo3.cs.ucl.ac.uk\/students\/syllabus\/msccs\/gc16_functional_programming\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>L\u1eadp tr\u00ecnh h\u00e0m l\u00e0 m\u1ed9t ki\u1ec3u l\u1eadp tr\u00ecnh m\u00e0 t\u00ednh to\u00e1n c\u00e1c m\u00f4 h\u00ecnh nh\u01b0 l\u00e0 \u01b0\u1edbc t\u00ednh c\u00e1c bi\u1ec3u th\u1ee9c. \u0110\u1ec3 hi\u1ec3u r\u00f5 v\u1ec1 l\u1eadp tr\u00ecnh h\u00e0m, b\u1ea1n n\u00ean&hellip; <\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[31],"tags":[63,585],"class_list":["post-258","post","type-post","status-publish","format-standard","hentry","category-lap-trinh-ham","tag-functional-programming","tag-gioi-thieu-lap-trinh-ham"],"_links":{"self":[{"href":"https:\/\/www.itersdesktop.com\/fr\/wp-json\/wp\/v2\/posts\/258","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.itersdesktop.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.itersdesktop.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.itersdesktop.com\/fr\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.itersdesktop.com\/fr\/wp-json\/wp\/v2\/comments?post=258"}],"version-history":[{"count":1,"href":"https:\/\/www.itersdesktop.com\/fr\/wp-json\/wp\/v2\/posts\/258\/revisions"}],"predecessor-version":[{"id":2238,"href":"https:\/\/www.itersdesktop.com\/fr\/wp-json\/wp\/v2\/posts\/258\/revisions\/2238"}],"wp:attachment":[{"href":"https:\/\/www.itersdesktop.com\/fr\/wp-json\/wp\/v2\/media?parent=258"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.itersdesktop.com\/fr\/wp-json\/wp\/v2\/categories?post=258"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.itersdesktop.com\/fr\/wp-json\/wp\/v2\/tags?post=258"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}