在“李斯特的小片段”一书的开头一页中,有一段是这样的:
基于经过几个世纪的数学研究已经成熟的“函数”思想,应用语言在计算中无处不在;它们以各种形式出现,例如Un字节流的组合、Emacs编辑器的扩展语言以及其他脚本语言。
有人能详细介绍一下“unix字节流的组成”吗?什么意思?以及它与应用程序/函数式编程的关系如何?
谢谢,
/bruin
发布于 2013-12-19 07:00:33
我的猜测是,这是对类似于linux下的pipe的引用。
cal | wc符号|调用两个应用程序之间的管道,pipe是内核提供的特性,因此您可以使用使用这种内核API编写应用程序的管道。
在本例中,cal只是打印日历的实用程序,wc是一个实用程序,它在传递给它的输入中对单词、行和列进行计数,在这种情况下,输入是将cal输送到wc的结果,这使得事情变得更容易,因为它更有功能,您只关心每个应用程序做什么,不关心参数的名称,或者在哪里分配临时文件来存储输入/输出。
如果没有管道,你应该做一些类似的事情
cal > temp.txt
wc temp.txt
rm temp.xt才能获得几乎相同的信息。另外,第二个解决方案可能会产生问题,例如,如果temp.txt已经存在了怎么办?按照什么样的理由,您将告诉您的脚本选择一个名称为您的临时文件?如果另一个进程在对cal和wc的2次调用之间修改您的文件,怎么办?
https://stackoverflow.com/questions/20675221
复制相似问题