我现在正在学习Lisp,它来自于机车BASIC-> Z80汇编器-> Pascal-> C-> Perl-> C#-> Ruby的语言发展。我的方法是同时:
- 使用SBCL,QuickLisp,closure-html和drakma编写简单的网络抓取工具
- 观看SICP讲座
我认为这运作良好;我正在开发好的“ Lisp护目镜”,因为我现在可以相当轻松地阅读Lisp。我也对Lisp生态系统的工作方式有所了解,例如Quicklisp的依赖关系。
不过,我真正想念的是对经验丰富的Lisper实际工作方式的感觉。
当我为.NET编码时,我已经使用ReSharper和VisualSVN设置了Visual Studio。我编写测试,实现,重构,提交。然后,当我做完足够的事情来完成一个故事时,我会写一些AUAT。然后,我在TeamCity上发布了Release版本,以将新功能推向客户进行测试和希望的批准。如果它是需要安装程序的应用程序,那么我会使用WiX或InnoSetup,显然是通过CI系统构建安装程序。
因此,我的问题是:作为一名经验丰富的Lisper,您的工作流程是什么样的?您主要在REPL还是在编辑器中工作?您如何进行单元测试?持续集成?打包和部署?当您坐在办公桌前时,一边蒸着一杯咖啡,一边蒸着装裱着约翰·麦卡锡(John McCarthy)的照片,那又是什么呢?
目前,我觉得我正在掌握Lisp编码,但没有掌握Lisp开发...