haskell - 在ghci中自动将`[Char]`显示为`String`?
问题描述
有没有办法让 ghci 自动显示[Char]
as的所有实例String
?这就是我通常想要的。
:set -XOverloadedStrings
做一些我想要的事情,但仅适用于字符串文字,似乎:
Prelude> :type ["foo", "bar"]
["foo", "bar"] :: [[Char]]
Prelude> :set -XOverloadedStrings
Prelude> :type ["foo", "bar"]
["foo", "bar"] :: Data.String.IsString a => [a]
Prelude> f s = "Yes, " ++ s
Prelude> :type f
f :: [Char] -> [Char]
我知道我可以将String
包含String
/[Char]
作为其类型的一部分的每个表达式添加到显式类型签名中,但我更喜欢将大多数签名留在我的代码之外,即使有些作者建议始终包含类型签名。
(这可能是一个常见问题解答,因此如果它因引用另一个问题而关闭,我不会感到惊讶,但我在搜索中无法找到该问题。那些在 SO 中对 Haskell 问题有更多经验的人可能是能够比我更好地找到以前的问题。)
解决方案
不,目前没有办法做到这一点。
推荐阅读
- python - 根据 json 列表字符串检查用户输入
- javascript - Chrome 扩展,将消息从注入脚本发送到后台的最佳方式
- javascript - 将文本附加到单个文本区域 - 按段落分隔(使用 javascript)
- kubernetes - 执行到另一个容器并访问其目录的最佳方法是什么?
- android - 我的 android 应用是否需要使用 Google Play In-app Billing 进行应用内订阅?
- php - 从 php 返回 json 到 Ajax 调用
- vba - 如何加快这个过程?
- java - “jdbc.drivers”系统属性是什么以及在哪里?
- c++ - 将 ISO8601 字符串转换为自纪元以来的毫秒数
- css - 为什么我的容器在鼠标移出时不会返回悬停前的状态?