您所在的位置:Seago-Microsoft Windows>>原创及转载文章>> 采访唐纳德克努特

采访唐纳德克努特

作者:唐纳德克努特 来源:美国 日期:2008-04-29 



假设你要知道,如果五个单独的乘数单位和/或三路的指示,发出将加快给mmix计划。或者,也许指示和/或数据高速缓存可作放大或缩小或更多的联想。刚刚成立的消防元模拟器和看看会发生什么情况。

郑家富:正如我怀疑您不使用单元测试与mmixal ,你能不能一步我通过你如何去确保您的代码正确工作下,各种各样的条件和投入呢?如果您有一个具体的工作进行例行核查左右,你能不能形容它呢?

唐纳德:大多数的例子,机器语言代码在taocp出现在1-3卷;由时间,我们获得第4卷,这种低层次的细节,主要是不必要的,我们可以安全地工作在更高层次上的抽象。因此,我已经需要只写十几或使mmix节目的同时,准备开放部分第4卷,他们都是非常玩具程式-任何实质性。小东西一样,我只是利用非正式的核查方法,理论的基础上,我已经写了这本书,联同mmixal汇编和mmix模拟器是现成的就净(并介绍了在全面,详列于mmixware预订) 。

这模拟器,包括调试功能一样的我发现,使有用的对外债务的satterthwaite的系统陵瓦特,刚才提及的。我总觉得很有信心后,检查程序与这些工具。

郑家富:尽管它的制定很多年前,纺织品仍是蓬勃发展,主要是因为基础胶乳。而纺织品已有效地冻结在您的要求,是否有功能,你会想更改或添加到它,如果你有时间和带宽?如果是的话,什么是重大事项,你添加/更改?

司长:我相信改变,特将造成更是弊多于利。其他的人,希望其他功能是建立他们自己的系统,和我总是鼓励进一步发展,除了任何人都不应给予他们的程序相同名称的矿井。我想采取永久的责任,为纺织品和metafont ,并为所有nitty - gritty的事情,影响现有的文件依赖于我的工作,如精密尺寸的字符在计算机现代字体。

郑家富:一个鲜为人知的讨论方面的软件开发是怎么做设计工作的软件在一个完全新的网域。你面对这个问题,当您答应纺织品:没有事先的艺术是向您提供的源代码,这是一个域而你并非一个专家。您是如何看待的设计,以及如何长期没有采取之前,你舒适的进入编码部分?

司长:这是另一个很好的问题!我已经讨论过,答案非常详细的在第10章我的书文学编程,连同第1及2章我的图书数字化印刷术。我认为任何人,实在是有兴趣在这方面的话题将享受阅读这些章节。 (亦见数字印刷术的章节24日和25日为完成第一和第二稿我的初步设计纺织品在1977年) 。

郑家富:书籍,纺织品和程序本身显示一个明确的关注,限制记忆体使用量的一个重要问题,为系统的那个时代。今天,关注记忆体使用量在节目更多地与快取记忆体的大小。正如有人曾设计了一个处理器在软件方面,问题的高速缓存感知和缓存算法的漠视,一定要越过你的雷达屏幕上。的作用是处理器缓存对算法设计的东西,你期望的范围,即使间接地,在你即将到来的工作呢?

司长:我刚才提到, mmix提供了一个试验台的许多品种的快取记忆体。和它的软件实施的机器,所以我们可以执行实验,将是可重复的,甚至一百年从现在开始。当然,未来版本的卷1月3日将讨论的行为的各种基本算法与尊重不同的缓存参数。

在第4卷直至目前为止,我指望大约12名参考,以快取记忆体和高速缓存友好的办法(更不用提了“备忘录快取记忆体, ”这是一个不同但相关的思想,在软件) 。

郑家富:什么的一套工具,你今天所使用的书写taocp ?您使用的纺织品呢?乳胶? cweb ?文字处理器?和你有什么使用的编码呢?

唐纳德:我一般的工作作风,是写一切与第一铅笔和纸张,坐在旁边的一个大废纸篓。然后我用Emacs的输入文字到我的机器,使用公约的纺织品。我用纺织品, dvips ,以及货车看到的结果,这出现在我的屏幕几乎瞬间这些天。检查我的数学与数学。

i计划每算法的讨论(好让我能彻底了解它)用cweb ,其中工程出色,与gdb此时就会调试。我提出的插图与metapost (或者,在极少数情况下,在Mac上用Adobe Photoshop或Illustrator中) 。我有一些自制的工具,像我自己的拼写检查纺织品和cweb在Emacs 。 i设计,我自己的点阵字体使用Emacs的,因为我最讨厌的方式ASCII的撇号和左边的公开报价已经演变为独立的符号不再符合对方的视觉。我特别Emacs的模式来协助我进行分类的所有数以万计的文件,并注意到在我的档案,并特别Emacs的键盘快捷键,使bookwriting一点点想扮演一个器官。我宁愿rxvt到的xterm终端的投入。自去年12月以来,我一直在使用一个文件备份系统的所谓backupfs ,符合我的需要精美存档的日常状态,每个档案。

根据目前的目录就我的机器,我所撰写的68个不同的cweb程序,使今年迄今。有大约100名在2007年, 90个在2006年, 100在2005年, 90个在2004年,等此外, cweb已极其便利的“变更档案”的机制,与我可以快速创建多个版本和变一个主题;至今在2008年我已经取得了73的变化对那些68的主题。 (有些变化是相当短,只有少数字节;别人5kb或更多一些的cweb程序是相当可观,如长达55页BDD的包,我1月完成) 。因此,你可以看到如何的重要文学编程是在我的生活。