编辑“︁
Miranda语言
”︁(章节)
跳转到导航
跳转到搜索
警告:
您没有登录。如果您进行任何编辑,您的IP地址会公开展示。如果您
登录
或
创建账号
,您的编辑会以您的用户名署名,此外还有其他益处。
反垃圾检查。
不要
加入这个!
===数据类型=== Miranda的基本[[数据类型]]是<code>char</code>、<code>num</code>和<code>bool</code>。字符串简单的就是<code>char</code>的列表,而<code>num</code>在两种底层形式之间静默转换:缺省的[[高精度计算|任意精度]]整数(又名bignum),和需要时的正规[[浮点数|浮点]]值。 [[元组]]是潜在混合类型的元素的序列,类似于类[[Pascal语言|Pascal]]语言的[[记录]],用圆括号来界定: <syntaxhighlight lang="haskell"> this_employee = ("Folland, Mary", 10560, False, 35) </syntaxhighlight> [[列表 (抽象数据类型)|列表]]是Miranda中最常用的数据结构。列表用方括号来界定并具有用逗号分隔的元素,它们都必须有着相同类型: <syntaxhighlight lang="haskell"> week_days = ["Mon","Tue","Wed","Thur","Fri"] </syntaxhighlight> 列表串接是<code>++</code>,删减是<code>--</code>,构造是<code>:</code>,大小是<code>#</code>而索引是<code>!</code>,比如: <syntaxhighlight lang="haskell"> days = week_days ++ ["Sat","Sun"] days = "Nil":days days!0 ⇒ "Nil" days = days -- ["Nil"] #days ⇒ 7 </syntaxhighlight> 有一些列表建造捷径:<code>..</code>用于其元素形成算数序列的列表,具有指定不是1的增量的可能: <syntaxhighlight lang="haskell"> fac n = product [1..n] odd_sum = sum [1,3..100] </syntaxhighlight> 更一般性和更强力的列表建造设施是[[列表推导式]](以前叫做“ZF表达式”),它以两种主要形式提供:应用于一系列项目的一个表达式,比如: <syntaxhighlight lang="haskell"> squares = [ n * n | n <- [1..] ] </syntaxhighlight> 它可以读作:<code>n</code>的平方的列表,这里的<code>n</code>取自所有正数的列表;和其中每个项目都是前一项目的函数的一个系列,比如: <syntaxhighlight lang="haskell"> powers_of_2 = [ n | n <- 1, 2*n .. ] </syntaxhighlight> 如这两个例子所蕴含的那样,Miranda允许无限数目元素的列表,其中最简单的是所有正数的列表:<code>[1..]</code>。
摘要:
请注意,所有对Local Chinese Wikipedia的贡献均可能会被其他贡献者编辑、修改或删除。如果您不希望您的文字作品被随意编辑,请不要在此提交。
您同时也向我们承诺,您提交的内容为您自己所创作,或是复制自公共领域或类似自由来源(详情请见
Project:著作权
)。
未经许可,请勿提交受著作权保护的作品!
取消
编辑帮助
(在新窗口中打开)
导航菜单
个人工具
未登录
讨论
贡献
创建账号
登录
命名空间
页面
讨论
大陆简体
不转换
简体
繁體
大陆简体
香港繁體
澳門繁體
大马简体
新加坡简体
臺灣正體
查看
阅读
编辑
查看历史
更多
搜索
导航
首页
最近更改
随机页面
MediaWiki帮助
工具
链入页面
相关更改
特殊页面
页面信息