Mục tiêu-J được biên dịch/chuyển đổi thành JavaScript trực tiếp trên trình duyệt. (Điều này trái ngược với việc thực hiện điều này trên máy chủ, như GWT làm cho Java.) Phương pháp này có được thực hiện cho bất kỳ ngôn ngữ nào, ngoài Objective-J không?Có các ngôn ngữ khác ngoài Objective-J được "biên dịch" thành JavaScript trong trình duyệt không?
Trả lời
Đây là ví dụ biên dịch ruby như ngôn ngữ thành javascript - và việc biên dịch có thể được thực hiện trong trình duyệt.
Trình biên dịch CoffeeScript biên dịch CoffeeScript vào ECMAScript. Vì trình biên dịch CoffeeScript được viết bằng CoffeeScript, nó có thể biên dịch chính nó thành ECMAScript và do đó chạy trong trình duyệt. Các bit và phần cần thiết để hỗ trợ các phần tử <script type='text/coffeescript'>
đã được bao gồm trong trình biên dịch CoffeeScript chuẩn.
Nói chung, bất kỳ ngôn ngữ nào có thể được biên dịch thành ECMAScript, tất cả những gì bạn cần là trình biên dịch. Và, kể từ bất kỳ ngôn ngữ thể được biên dịch để ECMAScript, bất kỳ biên dịch thể được biên dịch để ECMAScript, tất cả bạn cần là một trình biên dịch cho ngôn ngữ rằng trình biên dịch được viết bằng.
Điều này dẫn đến một vụ nổ tổ hợp khả năng biên dịch ngôn ngữ trong trình duyệt.
Ví dụ: có người này viết C compilers which target high-level languages để giải trí. Ông có một trình biên dịch biên dịch C sang Java, Perl, Common Lisp, Lua hoặc ECMAScript. Vì vậy, bạn có thể sử dụng trình biên dịch để biên dịch bất kỳ trình biên dịch khác được viết bằng C sang ECMAScript. Và hầu hết các ngôn ngữ có một số trình biên dịch ở đâu đó được viết bằng C.
Đầu mối được viết bằng C. Luận dịch từ C sang ECMAScript. Ergo, bạn có thể sử dụng Clue để biên dịch Clue thành ECMAScript. Sau đó, bạn có thể chạy Clue trong trình duyệt để biên dịch C sang ECMAScript khi đang di chuyển. <script type='text/c'>
, bất kỳ ai? (Suy nghĩ thú vị: Node.js được viết bằng C. Hmm & hellip;)
Trên một lưu ý nghiêm trọng hơn: nói chung có ba lý do để biên soạn để ECMAScript:
- tái sử dụng
- safety
- sự biểu thị
Nếu bạn chỉ muốn sử dụng lại mã hiện có được viết bằng ngôn ngữ khác (hoặc hiểu biết hiện có bằng ngôn ngữ khác), sau đó biên dịch/giải thích trên clie nt không có ý nghĩa nhiều. Mã hoặc trình mã hóa không mong đợi để có thể sử dụng các phần tử <script>
. Danh mục này bao gồm các nội dung như GWT hoặc Volta.
Nếu (loại) an toàn là mục tiêu của bạn, sau đó biên dịch/giải thích trên máy khách chỉ đơn giản là không hoạt động: làm thế nào bạn có thể đảm bảo an toàn nếu bạn không kiểm soát trình biên dịch? Đó là lý do tại sao Ur/Web, Links, Flapjax, haXe, Caja và biên dịch mã đó trên máy chủ. Họ đảm bảo an toàn bằng cách gõ tĩnh hoặc tích hợp chặt chẽ hoặc cả hai. (Theo tích hợp chặt chẽ, tôi có nghĩa là phụ trợ, giao diện người dùng và ứng dụng được kết nối chặt chẽ, ví dụ:chỉ định cấu trúc dữ liệu một lần và sau đó tạo các biểu mẫu SQL, ECMAScript và HTML tương ứng từ nguồn đơn đó để đảm bảo rằng tất cả chúng đều khớp với nhau. Cần phải rõ ràng lý do tại sao điều này đòi hỏi phải xử lý trên máy chủ.)
Những người tập trung vào tính biểu cảm, tuy nhiên, được sử dụng để thay thế cho ECMAScript, tức là bên trong <script>
yếu tố, và do đó họ thường đi kèm với thông dịch viên và/hoặc các trình biên dịch chạy trên máy khách. CoffeeScript, Objective-J và Clamato nằm trong danh mục này.
Ngoài các danh sách này có một chỉ số ở đây: http://altjs.org/ trong đó có:
- Ngôn ngữ mới cải tiến
- Javascript
- cổng (Java, C, Ruby, vv)
và hơn thế nữa
- 1. Ngôn ngữ nào có thể được biên dịch sang javascript?
- 2. Ngôn ngữ lập trình nào có trình biên dịch JIT?
- 3. Ngôn ngữ lập trình biên dịch thành PHP?
- 4. Thông dịch JavaScript bên ngoài trình duyệt?
- 5. Cần có những tính năng ngôn ngữ nào trong ngôn ngữ lập trình để tạo trình biên dịch?
- 6. Các tính năng của ngôn ngữ thông dịch nào có thể được biên dịch?
- 7. Dịch mã byte Java sang các ngôn ngữ lập trình và ngôn ngữ lập trình khác
- 8. Có trình duyệt nguồn kiểu CScope nào cho các ngôn ngữ khác ngoài C/C++ trên Windows không?
- 9. Trình biên dịch có trình biên dịch không?
- 10. Có một ngôn ngữ kịch bản 'biên dịch' thành cú pháp lô cửa sổ không?
- 11. Tạo ngôn ngữ lập trình và thiết kế trình biên dịch. Họ có liên quan không?
- 12. Có trình biên dịch mã máy gốc cho JavaScript không?
- 13. Có bất kỳ ngôn ngữ nào biên dịch thành Bash không?
- 14. Ngôn ngữ trình duyệt trong Playframework
- 15. Ngôn ngữ cho trình biên dịch dựa trên LLVM
- 16. Ngôn ngữ lập trình của bạn trong trình duyệt (tức là Javascript)?
- 17. Javascript được biên dịch hay là một ngôn ngữ thông dịch?
- 18. jQuery ngôn ngữ trình duyệt phát hiện
- 19. Có thể viết Trình biên dịch bằng Javascript không?
- 20. Ngôn ngữ lập trình PHP hoặc ngôn ngữ lập trình?
- 21. Java có phải là một ngôn ngữ lập trình được biên dịch hay được diễn giải không?
- 22. dịch một ngôn ngữ này sang ngôn ngữ khác?
- 23. Render cây cú pháp ngôn ngữ trong trình duyệt
- 24. Dự án VCL Delphi có thể được biên dịch thành plugin trình duyệt không?
- 25. Bạn có mong đợi Javascript được sử dụng rộng rãi bên ngoài trình duyệt không?
- 26. Trình biên tập mã Windows biên dịch/inteprets hầu hết các ngôn ngữ ala CodeRunner?
- 27. Tại sao một số ngôn ngữ lập trình nhanh hơn các ngôn ngữ khác?
- 28. File ReadAllLines biến ngôn ngữ nước ngoài thành ngữ pháp ()
- 29. Windows 8 có biên dịch JavaScript không?
- 30. Dịch các ngôn ngữ trong Delphi
Wow, đó là ... thú vị. Bật hai Tylenol. – UnkwnTech
Câu trả lời rất hay! Và tôi sẽ phải thử một số CoffeeScript. –