В настоящее время я изучаю Lisp, исходя из языковой прогрессии, которая называется Locomotive BASIC -> Z80 Assembler -> Pascal -> C -> Perl -> C # -> Ruby. Мой подход заключается в том, чтобы одновременно:
- написать простой веб-скребок, используя SBCL, QuickLisp, closure-html и drakma
- смотреть лекции SICP
Я думаю, что это работает хорошо; Я разрабатываю хорошие «очки для Лисп», так что теперь я могу довольно легко читать Лисп. Я также получаю представление о том, как работает экосистема Lisp, например, Quicklisp для зависимостей.
Однако мне действительно не хватает ощущения того, как на самом деле работает опытный Лиспер .
Когда я пишу код для .NET, у меня установлена Visual Studio с ReSharper и VisualSVN. Я пишу тесты, я реализую, я рефакторинг, я фиксирую. Затем, когда мне достаточно этого, чтобы закончить рассказ, я пишу несколько AUAT. Затем я запускаю сборку Release на TeamCity, чтобы предоставить клиенту новую функциональность для тестирования и, надеюсь, утверждения. Если это приложение требует инсталлятора, я использую WiX или InnoSetup, очевидно, собирая инсталлятор через систему CI.
Итак, мой вопрос: как опытный Лиспер, как выглядит ваш рабочий процесс? Ты работаешь в основном в REPL или в редакторе? Как вы проводите юнит-тесты? Непрерывная интеграция? Упаковка и развертывание? Когда вы садитесь за свой стол, выпаривая кружку кофе с одной стороны и фотографию Джона Маккарти в рамке с другой, что вы делаете ?
В настоящее время я чувствую, что справляюсь с кодированием на Лиспе, но не с разработкой на Лиспе ...