SO中文参考
首页
(current)
程序语言
c
java
python
c++
go
javascript
swift
c#
操作系统
linux
ubuntu
centos
unix
数据库
oracle
mysql
mongodb
postgresql
框架
node.js
angular
react-native
avalon
django
twisted
hadoop
.net
移动开发
android
ios
搜索
为什么原地突变用`IO`表示?
问题描述
投票:0
回答:1
为什么可变数据结构和其他可变性在函数式语言中使用
IO
表示?我正在看例如Haskell 的
IORef
或 Idris 的
IOArray
。
haskell
functional-programming
language-agnostic
mutation
in-place
1个回答
0
投票
您不需要用
IO
来代表它们。可以用
ST
来完成它们。但你
可以
显然用
IO
来表示它们,这样就可以实现任何肮脏的副作用。因此,如果您无论如何都在
IO
中工作,那么最简单的方法就是在那里进行突变,这样您就无需担心将不同的单子焊接在一起。如果您
尚未
已经在
IO
中工作,那么您应该使用
ST
。
最新问题
我无法在ajax中执行perl脚本
实体框架。直接编辑集合导航属性时的奇怪行为
在Python中检测比例参考线坐标
如何防止我的Python脚本在Windows上运行后立即关闭?
Gridgain9 是 ignite2 还是 ignite3 的下游
如何修改JavaFX中的ChoiceBox复选标记?
在pygame中实时播放带有alpha通道和同步音频的两个混合视频?
如何在cypher-shell中使用环境变量NEO4J_PASSWORD
ASP Classic IPN 侦听器可以工作,但现在不行了
如何实际使用 cv2.estimateAffine3D 在 python 中对齐 3d 点?
如何在 R 中生成具有跨多个组的 FDR 校正 P 值的分层汇总表
我无法使用 Exact Alarm 进行颤振本地通知
Azure OpenAI Studio Playground:在向任何函数提交输出时,我的助手总是返回未定义的错误
如何对Bull.js与Redis服务器的连接实现完整而非部分的TLS保护?
Nuget 资源从 https 更改为 http
不同值时如何在同一行返回结果
我可以将 boost::intrusive::rbtree 与 stateful_value_traits 一起使用吗?
确定next.js中的客户端/服务器组件
按照Ieee-754单精度格式实现浮点加法器但移位错误
如何在Python中通过OR-Tools使用sorted()和min()函数?
© www.soinside.com 2019 - 2024. All rights reserved.