以下是数独解算器的运行结不雅:
- | ?- sudoku([_, _, 2, 3,
- _, _, _, _,
- _, _, _, _,
- 3, 4, _, _],
- Solution).
- S = [4,1,2,3,2,3,4,1,1,2,3,4,3,4,1,2]
不幸的是,声明式编程说话很轻易造成机能瓶颈。膳绫擎的排序算法很可能 O(n!)让数独解算器进行了一次强力搜刮; 并且大年夜多半开辟人员必须供给数据库提示和额外索引,避免履行SQL萌芽时出现价值昂扬且效力低下的情况。
符号编程

Aurora说话是一个典范的符号编程的例子:它不仅包含纯文本编程,并且还包含图像,数学方程,图形,图钡寥。这可以或许用该数据的原始格局操作和描述各类数据,而不是用文本描述所稀有据。Aurora也是完全互动的,可以急速显示每行代码的结不雅,例如 REPL。
Aurora说话由Chris Granger创建,他也创建了Light Table IDE。Chris在他的文┞仿中概述了Aurora的念头:实现更好的编程。目标是使编程加倍具有可不雅察性,直接并削减有时的复杂性。欲懂得更多信息,请务必查看Bret Victor令人难以置信的会谈: Inventing src="http://s2.51cto.com/oss/201803/12/a38254dc318f4f8e7054cfc421fafcaa.png" />
如不雅你应用过SQL,那么你已经完成了一种声明式编程,你可能没有意识到这一点:当你发出萌芽时select X from Y where Z,你正在描述你想要返回的数据集;它是真正计算出若何履行萌芽的数据库引擎。
声明式编程

推荐阅读
因为工作的关系,笔者一向慎密跟踪国内私有云市场的成长,并有幸介入个中;也是因为工作的关系,笔者接触了很多没有广泛传播的消息素材。对于私有云这个概念,似乎国内大年夜局已定,几无悬念。笔者一向>>>详细阅读
本文标题:6个新奇的编程方式,改变你对编码的认知
地址:http://www.17bianji.com/lsqh/40608.html
1/2 1