Compiling. Transpiling.
TIL
763
@100daysTIL
72
White

Minh-Trung Nguyễn viết ngày 02/05/2018

Compiling. Transpiling.

Day 45

Đang đọc 1 bài liên quan đến compiler, một trong những thứ mình thấy khúc mắc đầu tiên là sự khác biệt giữa compilingtranspiling.

Vậy hai ông này khác nhau như thế nào?

MỘT. Điều đầu tiên là bỏ ngay khỏi đầu chữ "biên dịch" và "thông dịch" đi.

HAI: Theo như bài này:

  • Transpiling là một dạng đặc biệt của compiling.
  • Compiling phổ quát hơn, nó nói về quá trình nhận vào một đoạn code (mã nguồn) viết ở 1 ngôn ngữ lập trình nào đó, và quẳng ra một đoạn code viết bằng 1 ngôn ngữ khác.
  • Transpiling hẹp hơn, nó cũng nhận vào một đoạn code viết bằng 1 ngôn ngữ lập trình, và quẳng ra một đoạn code viết bằng ngôn ngữ khác. Vấn đề ở đây là 2 ngôn ngữ đầu vào - đầu ra có cùng cấp độ trừu tượng hóa (similar level of abstraction)

Ví dụ:

  • Quá trình compile C# sẽ biến nó thành IL (Intermediate Language). Đây không thể gọi là "transpiling" bởi 2 ngôn ngữ này khác nhau về mặt abstraction.
  • Khi compile TypeScript, nó biến thành JavaScript. Hai ngôn ngữ này tương tự nhau về mặt abstraction, vì vậy ta có thể gọi nó là "transpiling".

Giải thích trên là dễ hiểu. Tạm dừng ở đây.

PS: "Biên dịch khác phiên dịch" trong dịch thuật như thế nào? Xem bài này

ngminhtrung 02-05-2018

Bình luận


White
{{ comment.user.name }}
Bỏ hay Hay
{{comment.like_count}}
Male avatar
{{ comment_error }}
Hủy
   

Hiển thị thử

Chỉnh sửa

White

Minh-Trung Nguyễn

63 bài viết.
121 người follow
Kipalog
{{userFollowed ? 'Following' : 'Follow'}}
Cùng một tác giả
White
53 16
Đăng lại một bài đã viết từ cách đây mấy tháng. Chủ đề này đã có không ít, nhưng chẳng hiểu sao lượng bài tự viết của dân lập trình người Việt ta v...
Minh-Trung Nguyễn viết hơn 2 năm trước
53 16
White
28 6
Ghi chú: Tiêu đề hoàn toàn mang tính câu view. Bài copy từ blog của tác giả :) Tại sao lại có bài viết này? Một ngày đẹp giời tôi cần kiểm t...
Minh-Trung Nguyễn viết gần 3 năm trước
28 6
White
17 4
Về bước tìm và xử lý dữ liệu của Việt Nam phục vụ Data Visualization nền web Làm việc với D3js được nửa năm, một trong những điều bận lòng là chưa...
Minh-Trung Nguyễn viết hơn 2 năm trước
17 4
Bài viết liên quan
White
0 4
fCC: Technical Documentation Page note So I have finished the HTML part of this exercise and I want to come here to lament about the lengthy HTML ...
HungHayHo viết hơn 2 năm trước
0 4
White
3 1
Javascript inititalValue trong reduce() có quan trọng không? Day 41: Đọc code mẫu về hàm reduce() trong (Link), thấy hàm reduce() khá "đơn giản"....
Minh-Trung Nguyễn viết hơn 2 năm trước
3 1
{{like_count}}

kipalog

{{ comment_count }}

bình luận

{{liked ? "Đã kipalog" : "Kipalog"}}


White
{{userFollowed ? 'Following' : 'Follow'}}
63 bài viết.
121 người follow

 Đầu mục bài viết

Vẫn còn nữa! x

Kipalog vẫn còn rất nhiều bài viết hay và chủ đề thú vị chờ bạn khám phá!