2010-02-10 30 views
16

Khi nhiều người khác quan tâm đến việc học Lisp, tôi cảm thấy tài nguyên có sẵn không phải là tốt nhất cho người mới bắt đầu và cuối cùng ngăn chặn nhiều người mới học nó. Bạn có cảm thấy nó có thể được tạo ra một số loại cộng đồng, với một trang web, diễn đàn hay cái gì đó, cung cấp các tài nguyên/hướng dẫn tốt (như chất lượng), cho người dùng Lisp, có thể dịch sang vài thành ngữ? Bằng cách đó, những người mới bắt đầu không có các kỹ năng cần thiết để viết hướng dẫn có thể giúp dịch chúng. Đó là một ý tưởng tồi hay là nó có thể đạt được? Hãy cho tôi một số phản hồi hoặc châm biếm tôi: DCộng đồng Lisp - Hướng dẫn/tài nguyên chất lượng

+3

có một số sách tuyệt vời (thậm chí có sẵn tự do) để học Lisp. –

Trả lời

6

Lisp đã có từ rất lâu, có rất nhiều cộng đồng (phân tán). Không có cách nào để "tạo" một cộng đồng chung, đặc biệt là từ bên ngoài.

Paul Graham sẽ là một người có khả năng hợp nhất một cộng đồng lisp lớn, vì sự nổi tiếng của các lập trình viên trẻ tuổi, cũng như nền tảng của mình trong lisp (viết On Lisp). Tuy nhiên, ông đã chọn để tạo ra một phương ngữ khác của lisp, Arc.

Nhiều người đã viết về sự phân mảnh của cộng đồng Lisp, hoặc không có khả năng "bắt được" của Lisp. Một số ví dụ: here, here, herehere. Vì vậy, trong khi ý tưởng của bạn là một ý tưởng tốt, nó có lẽ là không kết quả.

Điều đó đang được nói, đừng để tôi ngăn bạn khỏi nổi lên và trở thành một nhân vật hợp nhất trong cộng đồng Lisp.

Theo như hướng dẫn hiện có, Emacs Wiki là nơi khởi đầu tốt cho việc học Emacs Lisp. Và để giới thiệu về Đề án - cũng như giới thiệu tốt về lập trình nói chung, có cổ điển Structure and Interpretation of Computer Programs.

Tôi thấy hai tài nguyên đó là điểm khởi đầu tốt cho việc học Emacs Lisp và Đề án. Tôi đã không chơi với Arc, nhưng có lẽ sẽ có một số hướng dẫn tốt về học Arc - bởi vì nó được thiết kế một phần là một ngôn ngữ tốt cho creating basic web apps.

5

Dưới đây là một diễn đàn: Lisp Forum, và đây là một cộng đồng: Planet Lisp

Dưới đây là một bài khá tốt bạn có thể thấy hữu ích, How to Learn Lisp.

Một trong những điểm mạnh của Lisp là ngôn ngữ trưởng thành có một số cuốn sách thực sự tuyệt vời về chủ đề này.

19

Có hai phương ngữ phổ biến của Lisp - Common Lisp and Scheme. Cả hai đều có sách/hướng dẫn tuyệt vời và triển khai trực tuyến miễn phí. Người mới bắt đầu có thể bắt đầu với Đề án đơn giản hơn. Một số nguồn lực cho việc học Scheme:

Sách miễn phí:

  1. Teach Yourself Scheme in Fixnum days. (pdf)
  2. The Scheme Programming Language.
  3. Structure and Interpretation of Computer Programs.
  4. How To Design Programs

cộng đồng trực tuyến/nguồn:

  1. The latest Scheme standard.
  2. Scheme Cookbook.
  3. Scheme Requests for Implementation
  4. Scheme Related Research
  5. http://www.schemers.org/
  6. http://groups.csail.mit.edu/mac/projects/scheme/

Một Đề án triển khai thực hiện phù hợp cho người mới bắt đầu là PLT Scheme.

Sách miễn phí để học Common Lisp:

  1. Practical Common Lisp
  2. On Lisp
  3. Common Lisp HyperSpec (tham khảo)
  4. Common Lisp: A Gentle Introduction to Symbolic Computation

cộng đồng trực tuyến/nguồn lực cho Common Lisp:

  1. http://common-lisp.net/
  2. CLiki
  3. The Common Lisp Directory

được ưa thích Common Lisp hiện thực: SBCL, CLISP, Clozure CL, Allegro CL

5

Trên thực tế, có khá một vài cuốn sách CL miễn phí trên mạng:

"Common Lisp: A Gentle Introduction to Symbolic Computation" bao gồm những điều cơ bản, nhưng có thể quá nhẹ nhàng, tùy thuộc vào trình độ của bạn.

"Successful Lisp" khá toàn diện và IMHO là tài nguyên trực tuyến tốt nhất cho việc học CL, nếu bạn đã lập trình một chút bằng ngôn ngữ khác.

"Practical Common Lisp" nhằm tiếp cận những người lập trình có kinh nghiệm và chắc chắn là một trong những cuốn sách Lisp tốt nhất hiện có - một trong số ít sách giải thích rõ ràng "sử dụng thế giới thực".

"On Lisp" là một cách đọc thú vị dành cho các lập trình viên CL nâng cao, chủ yếu bao gồm các macro.

Bên cạnh đó, có một không thể thiếu Hyperspec, một phiên bản html tiêu chuẩn, và CLtL2, là chuẩn ANSI trước thực tế (vẫn còn giá trị, vì nhiều người tìm thấy nó dễ tiếp cận hơn so với Hyperspec. đôi khi nó cho thấy mọi thứ từ góc độ khác).

Cuối cùng, có Lisp Forum và c.l.lisp. Mặc dù có nhiều tiếng ồn trên c.l.l., bạn có thể nhận được câu trả lời rất sâu sắc ở đó và học hỏi từ các bậc thầy. Là một newbie, người ta nên cố gắng đăng câu hỏi chu đáo trên c.l.l., và có một làn da dày.

0

Suy nghĩ của tôi, với tư cách là người mới đến lisp, sẽ giới thiệu Clojure (Tôi có trong sáu tháng qua đã chơi với Scheme và Emacs Lisp). Tôi chỉ chơi với Clojure trong vài ngày qua.

Chạy trên JVM, có nghĩa là hầu hết mọi người đều có hầu hết môi trường Clojure, họ chỉ cần tệp .jar và plugin cho trình chỉnh sửa hoặc IDE của họ (tùy chọn Java). Vì vậy, việc chạy dễ dàng hơn sau đó là Scheme hoặc CL về mặt lựa chọn. Hầu hết các lập trình viên mới có ít nhất là quen thuộc với Java, mà Clojure tất nhiên sử dụng khá tốt, có nghĩa là trong khi họ đang học, họ có thể tập trung vào lisp, và ít hơn một chút trên các thư viện. Có rất nhiều khái niệm mà họ tập trung tốt hơn nhiều.

Mặt khác, Java không có nhiều sự kỳ thị đối với nó. Nhưng Clojure có rất nhiều thứ cho nó, và tôi tin rằng một tương lai tốt đẹp phía trước, và Programming Clojure là imho, rất dễ tiếp cận, và cả Joy of ClojureClojure in Action sẽ sớm đến sớm.

0

Một cuốn sách tuyệt vời khác để học chương trình và đó là phong cách lập trình, thậm chí nhiều hơn khi bạn đến từ thế giới OO, tốt hơn nên bắt đầu từ đầu.

How to design programs

Các vấn đề liên quan