半烘焙:纯函数式编程与热输出
Halfbakery: Purely functional programming with heat output

原始链接: https://www.halfbakery.com/idea/Purely_20functional_20programming_20with_20heat_20output#1763275883

这段文字是对纯函数式计算机概念引发的漫长哲学探索。作者认为,即使设计没有“副作用”的程序,也必须产生热量——一种物理输出,从而挑战了真正无副作用计算的观念。他们提出了一种新颖的输出方法:使用温度波动(通过远程温度计测量)来表示二进制数据,有效地将热量*变成*输出。 然而,输入仍然是一个问题,作者戏谑地建议使用打火机。讨论逐渐深入到关于计算机“意识”、目的以及它是否仅仅是一个复杂的电阻器的存在主义问题。 随后,文字转向多重宇宙理论,认为无数现实同时运行,受到意识和个人选择的影响。最后,文章以对气候变化叙事的怀疑论告终,将其视为一种潜在的“骗局”,并将计算强度与更广泛的环境变化联系起来,与道格拉斯·亚当斯的《银河系漫游指南》相呼应。这是一篇混乱地融合了计算机科学、热力学、哲学和阴谋论的文章。

这个Hacker News讨论围绕一个“halfbakery”项目,探索纯函数式编程,重点关注能效。核心思想是**可逆计算**,计算不*删除*信息,理论上允许“冷”计算,能量损失最小。 一位评论者nvader指出,完美的计算机只会消耗能量来删除数据,这与当前“热且低效”的计算方式截然不同。然而,他们指出了该项目的一个关键挑战:将计算与输出分离。目前的实现有效地将CPU负载与标准输出绑定,可能导致意外的数据泄露。虽然限制计算可以缓解这个问题,但有将CPU*变成*输出设备的风险,从而违背了高效计算的目的。 讨论涉及计算的理论极限以及实施节能编程范式的实际困难。
相关文章

原文
h a l f b a k e r y

Faster than a stationary bullet.

add, search, annotate, link, view, overview, recent, by name, random

news, help, about, links, report a problem

browse anonymously, or get an account and write.

register, login

                       
Box sits there and does stuff - thermometer is output

I don't know where to put this, but it also applies to the ALGOL 60 standard, which has no I/O capability.

Purely functional programming, as I understand it, has no side-effects. All it does, ideally, is take and return values. This is thermodynamically suspect. What must surely be happening is that the computer sits there and gets hot when it processes data. Heat is output and a side-effect, so thermodynamically it appears that functional programming is as impossible as a perpetual motion machine.

That said, there are apparently logic gates which never lose information but that's not something I currently understand. Once again that seems thermodynamically suspect.

In the physical world, a device running a purely functional program just is going to get hotter and its heat will vary according to how intense its processing is. This means that it really is possible to design a functional program with no side-effects from the perspective of processing at all. When it comes to output time, binary data can be converted to serial form and then output as follows: 1 is intense computing which heats up the CPU a lot, and 0 is less intense computing which doesn't change the temperature much. Then, aim some kind of temperature-measuring device, also known as a thermometer but not the mercury or alcohol kind so much as one of those gun things for taking temperature remotely, and monitor fluctuations in temperature, probably more the rate of heating or cooling than actual temperature or heat, and you have an output technique for a purely functional program, and for something running ALGOL 60.

No input though.


       Presumably the input could be a cigarette lighter applied to the circuitry?   

       It's an existential angst engine; we see that it struggles, but those struggles have no discernible meaning, and then the algorithm terminates.   

       I suggest it needs a friend.   

       So this is how Charlie Brown keeps warm since he has basically no hair? Makes sense.   

       Functionally this is a resistor that does some 1's and 0's on the side.   

       Yes. But for all we know, it isn't lonely. It might be instantiating interacting protagonists.   

       Percussive input maybe?   

       So ... it's playing board games against itself, and then you hit it?   

       Maybe. Who knows what it's doing?   

       Well, if it's //instantiating interacting protagonists//, then it's playing board games against itself, or something quite similar. And percussive input does mean you hit it.   

       "Your honour, I submit that ... !"   

       What it comes down to is that, we are all doomed to live in interesting times.   

       It's going to become convoluted chaos soon and we are all just dust in the wind.   

       Some dust will find purchase, while other dust does not.   

       In another reality other dust finds purchase, while some dust does not.   

       ...and in another reality...   

       etc. etc.   


       We just all need to determine which reality is 'this' one.   

       I have a feeling that this is determined by consciousness, meaning that one persons' outcome will vary from another persons.   

       There is not only one reality program running at any one time.   

       They run simultaneously in their infinite probability programs and overlap whether they want to or not.   

       Enjoy the ride.   

       As I am modeling-in-mind your described device, I envision something remarkably close to the computing device described by Douglas Adams for calculating the Answer to Life, the Universe, and Everything.   

       Which makes me think - perhaps, rather than "climate change", we should be thinking "computational intensity".   

       Climate change is a con.   

       It's real. No doubt... but it's been going on forever..   

       ...but then to tax it from the populace?...   

       <slow clap> Nice con. Props.   

       If we don't live within a multi-verse then quantum computing would not exist. Every decision made by every microscopic organism creates a new reality.   

       Your thoughts can control it... if   
 
联系我们 contact @ memedata.com