宣告せんこくしきへんほど

本页使用了标题或全文手工转换
维基百科ひゃっか自由じゆうてき百科ひゃっかぜん

宣告せんこくしきへんほど英語えいごDeclarative programmingある译为声明せいめいしき编程,たいあずか指令しれいしきへんほど不同ふどうてきへんほどはんがたてきいちしゅごうしょう。它们建造けんぞう计算つくえほどじょてき结构元素げんそおもて计算てき逻辑而不よう描述它的ひかえせいりゅうほど[1]

がいじゅつ[编辑]

常見つねみてき宣告せんこくしきげん包括ほうかつ資料しりょう查詢げんSQLてき查询しゅうXQueryえいXQueryせい则表达式配置はいち管理かんりけい统如Puppet管理かんり配置はいち语言。かえりにゅう這種はんがたてき很多げん,描述问题领域えいDomain knowledgeうち目標もくひょうてき性質せいしつゆずる電腦でんのう明白めいはく目標もくひょう,而非りゅうほど,从而尝试极小ゆう关的副作用ふくさよう[2]。而指令しれいしき编程则需要用ようよう语言げんえいLanguage primitiveらいあかり确的指出さしでごといち该怎么做[3]

归入声明せいめいしき编程范型てき领域专属语言(DSL)还包括ほうかつyacc语法解析かいせき,编译说明语言Makeひとし。DSL需要じゅよう图灵完全かんぜんてき往往おうおう容易ようい以一种纯声明式的方式来表达。很多ぶんほん标记语言れいHTMLMXMLXAMLXSLT往往おうおう声明せいめいしきてき

てい[编辑]

声明せいめいしき编程,通常つうじょうてい义为じょ指令しれいしき以外いがいてきにんなん编程范型。どう存在そんざい一些其他的定义,简单てきはた宣告せんこくしき编程命令めいれいしき编程做对れい如:

  • つげ诉计さんつくえ需要じゅよう计算“什么”而不如何いか计算てきだか级程じょ
  • あかり确的对应数理すうり逻辑てき编程语言[4]
  • にんなんぼつゆう副作用ふくさようてき编程语言,あるものさら确切いちてんにんなに參照さんしょう透明とうめいてき编程语言。

这些てい存在そんざいいち重合じゅうごう

编程范型[编辑]

声明せいめいしき编程一个笼统的概念,じょりょう一些特定的领域专属语言之外,一些更加知名的编程范型也被归类为其子范型。

逻辑しき编程[编辑]

逻辑编程通常つうじょう做是形式けいしき逻辑てき论,计算做推导,透過とうか函數かんすう推理すいり规则あるじゅううつし規則きそくらい描述變數へんすうあいだてき關係かんけい。它的げん執行しっこうへんやくあるかい释器採用さいようりょういち固定こていてき算法さんぽう,以從這些關係かんけいさんせい結果けっかさく为典がた代表だいひょうてきProlog语言,声明せいめい关系并且对关けい进行ひさげ问;它和许多逻辑编程语言,みやこまこと副作用ふくさようてき存在そんざい

函数かんすうしき编程[编辑]

函数かんすうしき编程,尝试最小さいしょうじょうえいState (computer science)带来てき副作用ふくさよういん此可以被归类にゅう宣告せんこくしき编程,它現ざいいん大幅おおはば简化りょう并行计算てき编写难度而备受关ちゅう[5]じょりょう纯函数式すうしき编程语言如Haskell多数たすう函数かんすうしき编程语言如SchemeClojureOCamlStandard MLひとしまこと副作用ふくさようてき存在そんざい

约束しき编程[编辑]

ざい约束しき编程なか,变量间的关系ざい约束ちゅう说明てきてい义了问题てきかいてき范围。这些约束しかきさき应用ほどじょらいもとめかい,以使とくごと个变りょう获得いち个值,并让最多さいたてき约束いた满足。约束しき编程经常用作ようさく函数かんすうしきへんほど、逻辑编程甚至指令しれいしき编程てき补充,ようらい解決かいけつ人工じんこう智能ちのうなかてき約束やくそく滿足まんぞく問題もんだい

まいり[编辑]

參考さんこう[编辑]

  1. ^ Lloyd, J.W., Practical Advantages of Declarative Programming 
  2. ^ declarative language. FOLDOC. 17 May 2004 [26 January 2020]. (原始げんし内容ないようそん档于2015-08-10). 
  3. ^ Sebesta, Robert. Concepts of programming languages. Boston: Pearson. 2016. ISBN 978-0-13-394302-3. OCLC 896687896. 
  4. ^ Chakravarty, Manuel M. T. On the Massively Parallel Execution of Declarative Programs (学位がくい论文). Technische Universität Berlin. 14 February 1997 [26 February 2015]. (原始げんし内容ないようそん于2015-09-23). In this context, the criterion for calling a programming language declarative is the existence of a clear, mathematically established correspondence between the language and mathematical logic such that a declarative semantics for the language can be based on the model or the proof theory (or both) of the logic. 
  5. ^ Marlow, Simon. Parallel and Concurrent Programming in Haskell: Techniques for Multicore and Multithreaded Programming. O'Reilly Media. 18 June 2013. ISBN 978-1449335946. 

外部がいぶ連結れんけつ[编辑]