- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
背景
大多数样式指南建议将行长度保持在 79 个字符或更少。在 Haskell 中,缩进规则意味着表达式经常需要用新行分隔。
问题:
在表达式中,哪里可以合法地换行?
这是否记录在某处?
<小时/>扩展问题:我看到 GHC 在报告错误时格式化我的代码,因此有人找到了如何自动执行长行断行的过程。是否有一个实用程序可以将 haskell 代码放入其中并让它以良好的格式返回该代码?
最佳答案
您可以在表达式的词汇标记之间的任意位置放置换行符。但是,换行符后面可以缩进多少是有限制的。简单的经验法则是缩进下一行,从包含表达式的行的右侧开始。除此之外,还有一些风格的东西:
如果您要缩进定义中出现的表达式 name = expression
,在 =
右侧缩进是一种很好的风格。签名。
如果您要缩进 do
右侧出现的表达式绑定(bind)或列表理解,在 <-
右侧缩进是一种很好的风格。签名。
权威文档大概是Haskell 98 Report (Chapter 2 关于词汇结构),但我个人认为这些 Material 不太容易阅读。
关于haskell - Haskell 表达式中哪里允许换行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30810535/
在 Vaadin 7.0,显示时JavaBean Table 中的数据与 BeanContainer ,用新数据刷新表的正确方法是什么? 最佳答案 该表通过监听器监视表项的属性。如果您通过表的 Ite
首先,我使用的是带有 Axis2 1.6.2 的 eclipse,我正在 tomcat 6 上部署我创建的 Web 服务。Web 服务是在 eclipse 中通过自上而下的方法创建的。 我被要求使对我
我已将 Rails 3.1.1 应用程序升级到 Rails 3.1.3,现在,对于每个请求,它仅响应错误数量的参数(3 for 1)。不幸的是,它没有说明错误在哪里,并且应用程序跟踪为空。我认为存在一
我是一名优秀的程序员,十分优秀!