Chúng ta có thể sử dụng API GHC hoặc cái gì khác để tải không phải mô-đun nguồn văn bản, nhưng biểu thức AST, tương tự như haskell-src-exts Exp
type? Bằng cách này, chúng tôi có thể tiết kiệm thời gian cho việc tạo và phân tích mã.Tải động của biểu thức cú pháp trừu tượng Haskell
5
A
Trả lời
3
Tôi không nghĩ API GHC hiển thị giao diện AST (có thể sai mặc dù), nhưng mẫu Haskell thực hiện. Nếu bạn xây dựng các biểu thức bằng cách sử dụng cấu trúc Language.Haskell.TH
Exp
, bạn có thể tạo các hàm/khai báo và sử dụng chúng theo cú pháp $(someTHFunction)
.
Thông báo trước khá lớn là TH chỉ chạy ở thời gian biên dịch, vì vậy bạn cần phải tạo trước mọi thứ. Nếu bạn muốn sử dụng TH vào thời gian chạy, tôi nghĩ bạn cần phải in mẫu có chứa AST, sau đó sử dụng API GHC trên chuỗi kết quả.
Các vấn đề liên quan
- 1. Cây cú pháp trừu tượng là gì?
- 2. Cú pháp biểu thức Lambda
- 3. Chuyển đổi cây cú pháp trừu tượng sang mã byte
- 4. Truy cập cây cú pháp trừu tượng của động cơ V8
- 5. Lấy biểu đồ luồng điều khiển từ Cây cú pháp trừu tượng
- 6. Phương pháp trừu tượng ghi đè phương pháp trừu tượng
- 7. Haskell Newtype cú pháp
- 8. Trình phân tích cú pháp biểu thức đã nhập
- 9. Làm cách nào để giảm cây phân tích cú pháp của tôi thành cây cú pháp trừu tượng?
- 10. quá tải kế thừa phương pháp trừu tượng
- 11. C# Phương pháp chung trừu tượng
- 12. Cách thức sử dụng cú pháp Haskell trong [$ parseRoutes |/Home GET |]?
- 13. Sử dụng API cú pháp trừu tượng của CDT để tạo/viết mã C?
- 14. Làm cách nào để thiết kế các phần của cây cú pháp trừu tượng?
- 15. MIPS từ tải cú pháp
- 16. phương pháp chung trong lớp trừu tượng
- 17. phân tích cú pháp json trong haskell
- 18. Đại biểu (biểu thức Lambda) Vs Giao diện và lớp trừu tượng
- 19. Các biểu thức được gắn dấu sao cú pháp cú pháp không hợp lệ
- 20. Cú pháp haskell này là gì?
- 21. Lỗi cú pháp trong lớp mẫu với biểu thức lambda
- 22. Cú pháp lỗi trong biểu thức điều kiện
- 23. “Không thể khởi tạo lớp trừu tượng ... với các phương pháp trừu tượng” trên lớp học mà không cần phải có bất kỳ phương pháp trừu tượng
- 24. Cú pháp ghi Haskell và loại lớp
- 25. Lỗi cú pháp, biểu thức không được công nhận: # [đối tượng HTMLElement] Lỗi
- 26. Cách sử dụng Reader Monad khi duyệt qua một cây cú pháp trừu tượng
- 27. Chọn trình phân tích cú pháp Haskell
- 28. Tải biểu tượng cửa sổ động
- 29. Haskell: phân tích cú pháp PDF
- 30. Trình phân tích cú pháp Haskell tới AST
Ngoài ra tôi có thể tạo mã nguồn mẫu Haskell. Điều này có thể được coi là sự thỏa hiệp giữa việc tạo ra các biểu thức AST và tạo ra nguồn văn bản Haskell. – modular