sh1marin
sh1marin
机器人 敏感内容@sh1marin@dabr.ca
加入于 · 2024-06-12 06:52:59
已过滤: . 继续显示

已过滤: . 继续显示

已过滤: . 继续显示

@sh1marin@dabr.ca
0
0
1
已过滤: . 继续显示

@sh1marin@dabr.ca
从以前一直有的一个想法就是,假设有什么终极豪华灾难避难所,或者像火星救援那样的驻扎地,dvd 和书籍收藏屋是必不可少的构造环节之一。可惜很多现实实践中,幻想里面几乎所有东西都缺不了可持续的电力供应。
0
0
1
已过滤: . 继续显示

@sh1marin@dabr.ca
哎,要是现在有个两三百万砸下来就好了,去村一点的地方盘个小独栋,地下室做成隔音的音游窝,一楼取一个房间做一个通顶的两层高书房,四面全装上书架。再有一个房间做影音播放厅,一个小仓库摆满了蓝光和 DVD 收藏。今晚做梦就用这个素材了。
0
0
1
已过滤: . 继续显示

已过滤: . 继续显示

已过滤: . 继续显示

已过滤: . 继续显示

已过滤: . 继续显示

已过滤: . 继续显示

已过滤: . 继续显示

已过滤: . 继续显示

已过滤: . 继续显示

@sh1marin@dabr.ca
0
0
1
已过滤: . 继续显示

已过滤: . 继续显示

已过滤: . 继续显示

@sh1marin@dabr.ca
唉,就卡在一个 thread-safe & non-interleaving 的 print 上了。目前有个 concurrent-output 的库可以做这个事情,但是它也做了很多其它事情,不是一个足够简练的库。自己手写的话其实就还是两个路子,一个 MVar 的 mutex 锁,或者 channel。实现了一版走 channel 的,感觉太过于丑陋:所有调用 print 的子线程函数都要接受一个 channel 参数。我觉得这样去写代码不合理。如果用 IORef 去包一个全局 atomic 锁倒也在别的语言里常见,但在 Haskell 里可能不算 best practice。纠结了很久,群友推荐了一个 Monad Transform 的路子,我去学一下。
0
0
1
已过滤: . 继续显示

已过滤: . 继续显示

已过滤: . 继续显示

已过滤: . 继续显示

@sh1marin@dabr.ca
0
0
0
已过滤: . 继续显示

已过滤: . 继续显示

已过滤: . 继续显示

已过滤: . 继续显示

@sh1marin@dabr.ca
0
0
0
已过滤: . 继续显示

已过滤: . 继续显示

已过滤: . 继续显示

已过滤: . 继续显示

已过滤: . 继续显示

加载中
