Nontrailing separators do not spark joy
2 days ago
- JSON缺少尾随逗号使得添加或删除键值对变得复杂,需要不同于允许尾随逗号情况下的转换。
- Haskell的记录语法使用前置逗号,使得修改最后一行更容易,但更改第一行更困难。
- TLA+禁止尾随逗号,在添加变量时常引发问题,而其PlusCal扩展则没有此问题。
- Prolog使用句点终止规则,而非尾随分隔符,若使用逗号则可能导致解析歧义。
- Go和Python等语言在数据结构中允许尾随逗号但不允许前置逗号,而Alloy允许前置和尾随逗号。
- 反对尾部分隔符的论点包括解析歧义,如Prolog规则边界和Ruby方法链中的情况。
- Python使用尾随逗号来区分单元素元组和括号表达式,展示了一个边界情况的优势。