2012-08-01 23 views
5

Có một trình phân tích cú pháp có sẵn khi mở không? Khác, tôi đang lập kế hoạch viết một quy tắc ngữ pháp bằng cách sử dụng http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdfCó trình phân tích cú pháp bison flex cho javascript không?

Cảm ơn.

+0

Chúc may mắn với công việc đó, nó sẽ là một dự án lớn – Ryan

+0

Thú vị! Tại sao không có một? Có lẽ có một trình phân tích cú pháp javascript tốt hơn không? bất kỳ công cụ gnu ?? – trinity

+1

@trinity Bạn đã bao giờ tìm thấy các tập tin ngữ pháp cho flex/bison hoặc tương tự? – yms

Trả lời

-1

Có rất nhiều chương trình phân tích cú pháp JS ở đó, chủ yếu là nhiều chương trình linter. JSLINT/JSHINT, v.v. Crockford đã viết một chút về trình phân tích cú pháp mà anh ta sử dụng trong JSLINT http://javascript.crockford.com/tdop/tdop.html

Tôi biết nó không phải là bison/ngữ pháp được tạo ra, nhưng đó có phải là yêu cầu nghiêm ngặt không?

+1

có, tôi cần phụ thuộc ngữ pháp - được quy định theo ngữ pháp -> hành động, vì vậy tôi có thể xác định hành động của riêng mình. – trinity

+0

Vì mục đích nào bạn muốn xác định hành động, bạn có đang viết một thông dịch viên hay không công cụ phân tích? – Svend

+0

Có, để kiểm tra xem các j có tuân theo một số quy ước tùy chỉnh hay không. – trinity

12

Tôi nghĩ bạn có thể thử Jison.

Jison có ngữ pháp không có ngữ cảnh khi nhập và xuất ra tệp JavaScript có khả năng phân tích cú pháp ngôn ngữ được mô tả bằng ngữ pháp đó. Sau đó, bạn có thể sử dụng tập lệnh được tạo để phân tích đầu vào và chấp nhận, từ chối hoặc thực hiện các tác vụ dựa trên dữ liệu nhập. Nếu bạn quen thuộc với Bison hoặc Yacc, hoặc những bản sao khác, bạn gần như đã sẵn sàng để cuộn.

http://zaach.github.com/jison/docs/

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