2009-07-14 31 views
25

Tôi đã tìm kiếm gần đây tại Boost.Spirit (phiên bản có trong Boost 1.39), tuy nhiên tôi khá bối rối với các tài liệu. Những gì tôi đang tìm kiếm là cho một ví dụ về một ngôn ngữ đồ chơi được thực hiện với Boost.Spirit - một cái gì đó dọc theo dòng của một Javascript nhỏ hoặc Lua hay như vậy, nơi bạn về cơ bản tạo ra một AST và quá trình. Tôi sẽ rất vui nếu nó chỉ hỗ trợ định nghĩa hàm/biến và toán tử cơ bản, tôi chỉ muốn xem bạn sẽ tạo AST thông thường như thế nào bằng Boost.Spirit và cách triển khai các quy tắc cơ bản như mã định danh, khai báo, v.v.Hướng dẫn bắt đầu cho Boost.Spirit?

Cho đến nay, tôi đã thử ví dụ về máy tính, nhưng không rõ đối với tôi cách thực hiện ngữ pháp lớn hơn với Spirit. Ví dụ mini_c được đóng gói ở mặt khác trông khá phức tạp, và nó không được viết quá rõ ràng. Có một số dễ hiểu hướng dẫn để Boost.Spirit ra khỏi đó, hoặc một cuốn sách có thể?

+0

Nếu bạn muốn tìm hiểu về Thần Khí X3 mới, tôi khuyên bạn nên [video này] (https://www.youtube.com/watch?v=xSBWklPLRvw). Các slide powerpoint được tìm thấy [ở đây] (http://ciere.com/cppnow15/using_x3.pdf). –

Trả lời

10
+2

Đây là bài viết của riêng tôi tại JSON sử dụng Spirit V2 https://github.com/sehe/spirit-v2-json để so sánh – sehe

+0

Đây là một bài viết hay về Tiến sĩ Dobbs: [http://www.drdobbs.com/ cpp/the-spirit-parser-library-inline-parsing/184401692] (http://www.drdobbs.com/cpp/the-spirit-parser-library-inline-parsing/184401692?pgno=1) – evilspacepirate

5

hãy nhớ có một phiên bản tinh thần tăng mới với cách tiếp cận hoàn toàn mới trong việc tạo AST.

+3

Tài liệu cho Spirit2: http://www.boost.org/doc/libs/1_40_0/libs/spirit/doc/html/index.html –

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