2011-12-22 34 views
10

Nó đánh tôi như một điều tốt (tức là về thời gian biên dịch), rằng trình thông dịch Python sẽ tạo các tệp .pyc bytecode. Tôi tin rằng python sử dụng một số loại băm để xác định xem nguồn đã thay đổi và sau đó biên dịch lại.Tại sao Perl không biên dịch thành các tệp nhị phân như python

Đây có phải là ý tưởng hay cho Perl không? (đối với các dự án lớn hơn với nhiều phụ thuộc, vv).

+0

Điều gì với nhãn hiệu? Nó có phải là thứ gì đó Pythonic không? – Zaid

+1

@Zaid * Điều tốt * là [biệt ngữ] (http://catb.org/jargon/html/G/Good-Thing.html) và thường được nhấn mạnh với nhãn hiệu. Chuyên viên máy tính. Đi con số. –

Trả lời

12

Để có giải thích khá dài về các tệp .pmc, có lenghty article on perlmonks, cũng giải thích lý do tại sao không ai sử dụng nó.

+0

Trong khi chức năng python được xây dựng trong nó trông giống như (từ những gì tôi chỉ đọc) mà perl pmc là một chút của một suy nghĩ! – Richard

2

Parrot là một bytecode VM mà lẽ ra phải được sử dụng bởi các phiên bản tiếp theo của Perl, tức là Perl6, nhưng dường như không còn nữa (nhờ Barney Schmale 's bình luận)

+0

Perl6 là một loại Perl khác, chứ không phải là "tiếp theo" như người kế nhiệm. Đó là một đặc tả ngôn ngữ, giống như lisp thông thường là một đặc tả ngôn ngữ. – tempire

+0

Có, nhưng chỉ có (nguyên mẫu, không đầy đủ, giai đoạn alpha) thực hiện Perl6 có vẻ là Parrot dựa. –

+0

Chỉ cần ghi chú cho người đọc vào năm 2015. Tuyên bố này không còn chính xác nữa. Việc thực hiện đầy đủ nhất hiện tại của Perl 6 là Rakudo. Rakudo hỗ trợ nhiều phần phụ trợ. Phần phụ trợ toàn diện nhất là VM Moar, tiếp theo là JVM. Hỗ trợ con vẹt đang tụt lại phía sau. – BarneySchmale

4

Trên thực tế, có một cách để biên dịch Perl để bytecode , nhưng nó có một số hạn chế. Xem B::Bytecode.

0

Mất dài hơn để Perl tải từ nhị phân so với nguồn.

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