Ngôn ngữ biên dịch
Bài viết này có một danh sách các nguồn tham khảo, nhưng vẫn chưa đáp ứng khả năng kiểm chứng được bởi thân bài vẫn còn thiếu các chú thích trong hàng. (January 2013) |
Ngôn ngữ biên dịch (tiếng Anh: compiled language) là ngôn ngữ lập trình có triển khai thường là trình biên dịch (bộ dịch tạo ra mã máy từ mã nguồn), chứ không phải trình thông dịch (bộ thực thi mã nguồn từng bước mà không cần dịch trước thời gian chạy).
Thuật ngữ này có vẻ mơ hồ. Về nguyên tắc, bất kỳ ngôn ngữ nào có thể được triển khai với trình biên dịch hay với trình thông dịch.[1] Một sự kết hợp của cả hai giải pháp cũng rất phổ biến: trình biên dịch có thể dịch mã nguồn sang một số mã trung gian (thường được gọi là p-code hay bytecode), sau đó được chuyển đến trình thông dịch để thực thi nó.
Ưu điểm và nhược điểm
sửaChương trình được biên dịch thành mã gốc (native code) vào thời điểm biên dịch có xu hướng chạy nhanh hơn so với chương trình được dịch khi chạy, bởi chi phí của quá trình dịch.
Ngôn ngữ
sửaMột số ngôn ngữ thường được coi là được biên dịch:
- Ada
- ALGOL
- BASIC
- C
- CLEO
- COBOL
- Cobra
- Crystal
- eC
- Eiffel
- Erlang (to bytecode)
- F# (to bytecode)
- Factor (later versions)
- Forth
- Fortran
- Go
- Haskell
- Haxe (to bytecode or C++)
- JOVIAL
- Julia
- LabVIEW, G
- Lisp
- Lush
- Mercury
- ML
- Nim (to C, C++, or Objective-C)
- Open-URQ
- Pascal
- PL/I
- RPG
- Rust
- Seed7
- SPITBOL
- Visual Foxpro
- Visual Prolog
- W
Công cụ
sửaXem thêm
sửaTham khảo
sửa- ^ Ullah, Asmat. “Features and Characteristics of Compiled Languages”. www.sqa.org.uk (bằng tiếng Anh).
Liên kết ngoài
sửa- Compiled Languages trên DMOZ