首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >哪些语言没有循环结构?

哪些语言没有循环结构?
EN

Stack Overflow用户
提问于 2010-02-28 20:18:12
回答 5查看 4.2K关注 0票数 9

哪种语言是纯递归语言?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-02-28 20:24:21

这取决于你所说的循环构造的含义--有几种类型。无限循环、迭代器--计算数组或散列中每一项的循环--以及像C语言风格的通用循环

代码语言:javascript
运行
复制
for ( int i = 0; i < 10; i++ )

维基百科有一个按语言列出的支持此类结构的表:Loop system cross reference table

完整地回答您的问题,HaskellScheme是两个没有内置标准for循环的语言示例;它们通常是使用递归完成的。

票数 6
EN

Stack Overflow用户

发布于 2010-02-28 20:58:21

Functional programming语言(如Haskell,Erlang)通常没有循环,function-level语言(如FP,J)或logic语言(如Prolog,Planner)也没有循环。实际上,几乎所有的declarative语言(函数式、函数级、逻辑级等都是其中的一个子集)往往没有循环结构。

但是..。

也就是说,它们中的许多都有与显式循环相同的方法。例如,通用Lisp的宏使您能够在幕后通过宏技巧执行看起来像是常规的for、while等循环。Dylan (一个非常不像Lisplike的Lisp)更进一步,将这样的宏提升为语言的有效部分(尽管语义仍然可以用递归和宏来定义)。同样,函数语言中的常见操作,如zips、map、folds、takes等,都是高级函数,它们在函数调用后面屏蔽显式递归,并以各种循环构造的方式工作。

票数 5
EN

Stack Overflow用户

发布于 2010-02-28 20:28:01

Erlang没有循环结构。相反,您可以使用递归。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2350993

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档