关于服务
翻译我在 Dylan 中开发程序——这是 Lisp 和 CLOS 的多范式后代,我在实际任务中研究了它的对象模型多年。如果你需要可工作的代码,我会交付:使用 Dylan 编译器工具链构建的原生二进制文件,具有仔细库声明和导入的模块,具有真实类层次结构的调度的通用函数。多重调度是该语言最强大的特性,我有意识地围绕它进行设计,而不是与之抗争。工作通常从关于你的问题领域的对话开始。然后,我将任务建模为类和通用函数,在编译器应该积极优化的地方放置密封定义,只开放那些应该保持可扩展的部分。当一个模式重复得太频繁时,我会编写卫生宏,并保持它们的可读性,以便你的团队在我离开后能够维护它们。我的大部分实践是拯救遗留的 Dylan 代码:被离职作者遗弃的项目,停止在当前工具链版本上构建的源代码,堆积的功能代码让人们不敢触碰。我将它们恢复到可编译状态,添加测试,记录模块边界,并交付可以开发的东西。交付内容包括可构建的源代码、准备好的原生可执行文件、关于库结构的说明以及构建的短屏幕录制以供重现。我测试每一个更改,保持提交小而简洁,用简单的语言解释决策。需要一个新的原生应用程序、与现有 C 库的绑定、热通用函数的优化或仔细移植——我会将其从草图变为准备好的二进制文件。