【发布时间】:2010-08-20 06:40:42
【问题描述】:
我在 Linux 平台上担任 C 开发人员已经有一段时间了。最近完成了K&R,并做了一点关于在C中实现OOP的研究。除此之外,我还研究了C++和Java。所有这些都在 Linux 平台上。
现在我打算学习 LISP。我已经完成了针对 SO 初学者的 LISP 讨论,尤其是 What’s the best way to learn LISP。
我明白,从过程式编程范式转变为函数式编程范式是一个重大举措。从新范式的角度思考将是真正的挑战。就像我第一次学习 OOP 时一样。
这是我真正担心的范式。当我开始 OOP 时,大部分时间都花在了学习如何用 OOP 来看待问题。语法并不难掌握。
由于我一直在使用 C 语言工作,因此我目前在工作场所的项目也使用 C 语言。我担心如何才能学会从函数式编程的角度看待问题。
- 对于 C 开发人员来说,转向 LISP 的最佳方式是什么?
- 在转向 LISP 之前,我是否应该学习一些其他中间语言?
- 如果是,那可能是哪种语言?
- 有什么特别的文字可以帮助我以函数式编程的方式思考?
- 有什么建议可以让这种转变更快更容易吗?
感谢您的宝贵时间。任何帮助和建议将不胜感激。
【问题讨论】:
-
别再折腾了,用 LISP 写一个半现实的程序吧。这始终是最好的学习方式。你会犯错误并从中吸取教训!
-
忘记(或至少忽略)您对编程(尤其是 C)的了解,然后遵循“我如何学习 LISP”编程中的建议。 LISP 与 C 有很大的不同,因此在学习过程中寻找相似之处会减慢您的学习速度。
-
+1,Richard Stallman 本人是用 LISP 编写的。
-
你一直在说“功能性”(并且还把名字全部大写!)。您打算学习 Common Lisp,还是正在研究其他一些主要功能性的 Lisp 方言?
-
@Ken:感谢您指出大写的事情。我的错! :)
are you looking at some...我是从 Practical Common Lisp 开始的。在这个阶段,我只专注于 PCL。 Amos 在回复中提到 Lips 并不是严格意义上的 FP 语言,所以后面我会寻找严格意义上的 FP 方言或语言。你有什么建议吗?谢谢
标签: c functional-programming lisp