我是一位经验丰富的 C++/.NET/Java Windows/web 程序员,正在尝试学习(通用)Lisp。我正在阅读Practical Common Lisp并使用SLIME。
我很容易获得 Lisp 语言,但我在探索开发机制时遇到了麻烦。我的问题之一是处理 Emacs。我没有使用它的经验,并且发现它通常与难以查找/弄清楚的命令混淆。
具体问题:
- 我得到了REPL,但我不太明白如何有效地使用它。当我需要更改函数时,我必须重新键入 defun 并进行更改(繁琐且容易出错)。我怎样才能做得更好?
- 我如何从在 REPL 输入代码到实际拥有一个程序?我习惯了 C 模型,您可以在其中查看、编辑和重新编译代码文件。我知道 Lisp 有类似的东西(通过加载函数),但是如何将我刚刚定义并测试的函数放入要保存的文件中?我希望有比我目前的选择+复制+粘贴更好的方法。
- 你如何调试错误?有没有像使用其他语言一样进入代码的能力?
- 只要 S 表达式有效,我在输入
(defun ...)
. 直到我尝试使用它才发现它无效。有什么方法可以更快地出错(即编译代码)? - 是否有一些 IDE 对我来说更熟悉或让我更容易使用该语言?
- 我应该改用学习计划吗?
任何提示将非常感谢!