2009-04-01 17 views

Trả lời

1

Vẹt và LLVM là hai thứ khác nhau được thực hiện bởi hai tổ chức khác nhau.

Vẹt là máy ảo và LLVM là máy ảo cũng có thể biên dịch tĩnh.

Sửa

Giả sử các ý kiến ​​để trả lời của tôi là chính xác:

  1. LLVM cho phép bạn gọi mã LLVM khác và cũng C bên ngoài như thư viện.
  2. Parrot cho phép bạn gọi mã Parrot khác, nhưng không phải bên ngoài C như thư viện.

http://en.wikipedia.org/wiki/Comparison_of_application_virtual_machines

+0

Tôi nghĩ Jox được hỏi về cả Parrot và LLVM –

+0

lợn đất là đúng, tôi nghĩ :) Qustion không phải là về các thư viện "cross-vm-platform", nhưng về khả năng sử dụng thư viện được viết bằng một ngôn ngữ cho ParrotVM trong bất kỳ ngôn ngữ được nhắm mục tiêu Parrot nào khác. Câu hỏi tương tự là viết tắt của LLVM. – Jox

+0

Không thể gọi hàm C hoặc được gọi từ hàm C trong Parrot? – Eonil

1

LLVM

Bệ đặt cho máy ảo ở mức độ thấp. Nó sử dụng các mã opcode cấp thấp, dễ dàng ánh xạ tới mã máy riêng.

  • Ngôn ngữ: Fortran, C, C++
  • Ứng dụng: Hệ thống lập trình, phát triển trình biên dịch

Parrot:

Đây là một máy ảo cấp cao. Opcodes của nó là cấp cao hơn nhiều sau đó những người trong hầu hết các máy ảo. Điều này cho phép Parrot tạo mã gốc hiệu quả cho các ngôn ngữ động.

  • Ngôn ngữ: Ruby, Perl, PHP
  • Ứng dụng: server-side scripting
Các vấn đề liên quan