15 điểm bởi alstjr7375 2024-11-03 | 5 bình luận | Chia sẻ qua WhatsApp

Nhờ sự giới thiệu từ nhóm Racket,
giới thiệu những phần đã được triển khai tiên tiến trong các ngôn ngữ họ Lisp.

  1. Macro mạnh mẽ và an toàn nhất của Racket
    1.1 Macro an toàn
    - C vs Racket: vì sao macro phải là cú pháp
    - Common Lisp vs Racket: vì sao macro phải mang tính vệ sinh
    1.2 Macro mạnh mẽ
    - Tổng quan về transform bằng đối tượng Syntax
    - Làm việc với đối tượng Syntax và danh sách
    - Thử trực tiếp transform bằng define-syntax
    - Viết theo kiểu khai báo với macro pattern matching
    - Compile-time và runtime khi định nghĩa macro
    - Macro định nghĩa hàm hoặc biến
  2. Dynamic binding đi cùng Thread của Racket
    2.1 Dynamic binding là gì?
    2.2 Vì sao là dynamic binding?
    - Ngăn ô nhiễm toàn cục không cần thiết từ biến toàn cục
    - Loại bỏ các tham số không cần thiết trong context
    - Giảm boilerplate không cần thiết trong dependency injection
    2.3 Dynamic binding an toàn với Thread
  3. Hệ thống hướng đối tượng động và linh hoạt của Common Lisp
    3.1 Nhiều cách triển khai hướng đối tượng
    3.2 Hệ thống method linh hoạt
    - Method có thể mở rộng mà không sửa định nghĩa class
    - Multiple dispatch theo kiểu đối tượng
    - Kết hợp method để kiểm soát cross-cutting concerns
    3.3 Đối tượng động
    3.4 MOP (Meta-Object Protocol) mở rộng hệ thống hướng đối tượng
    - Bộ đếm thử kiểm soát trạng thái khi tạo
    - Trình kiểm tra kiểu để thử mở rộng chức năng hiện có
    - Thêm keyword vào định nghĩa class để thử kiểm chứng giá trị
    3.5 Đa kế thừa
    - Vấn đề đa kế thừa của C++
    - Quy tắc CPL (Class Precedence List)

5 bình luận

 
kayws426 2024-11-06

Lúc học sau này nhất định phải đọc thử mới được!!

 
alstjr7375 2024-11-06

Cảm ơn!! haha

 
roxie 2024-11-06

Tôi tò mò không biết điều gì đã khiến bạn bị cuốn hút bởi sức hấp dẫn của Racket giữa rất nhiều phương ngữ khác nhau!

 
alstjr7375 2024-11-06

Mình biết đến HtDP(How to Design Programs) khi đang học như một phiên bản dễ hơn của SICP.
Cú pháp rất gọn gàng và được thiết kế rất tốt.

Vì vậy mình bắt đầu quan tâm và tìm hiểu thêm thì thấy có nhiều điểm được thiết kế tốt hơn mình nghĩ..

 
roxie 2024-11-09

Cảm ơn! Có cả cuốn sách như vậy nữa à.