2011-11-23 26 views
17

Có ngôn ngữ nào được biên dịch sang mã Java không (không phải mã Byte nhưng Java .. vì vậy không có Groovy, Scala, Jython, JRuby, vv)?Có Coffeescript cho Java không? Nói cách khác X được biên dịch sang Java

Nói cách khác là có CoffeeScript cho Java?

Một trong những sai sót chính mà tôi gặp phải đối với Java là nó tiết lộ chi tiết và không có nhiều thừa kế. Có vẻ hợp lý rằng người ta chỉ có thể làm sạch cú pháp thêm mixin/đặc điểm và đóng cửa thông qua việc tạo mã.

Vâng nó không thanh lịch nhưng coffeescript hiện nó.

+0

nhờ ơn chúa tể không có nhiều thừa kế – mcabral

+0

@mcabral Tôi có nghĩa là mixin hoặc đặc điểm. Oh và tôi yêu lặp lại hàng trăm lần. Nghiêm túc tôi phải sử dụng AspectJ để giữ Java OOP DRY hoặc người nào khác tôi chỉ cần dán mã trên tất cả các nơi. –

+1

@mcabral: Nhiều kế thừa trong chính nó không phải là một sự phản ứng. Cách C++ thực hiện nó đã cho nó một tên xấu. Scala, ví dụ, thực hiện nhiều thừa kế đúng cách, và không có vấn đề kim cương đáng sợ. – missingfaktor

Trả lời

27

Yep, Xtend. Đó là một ngôn ngữ mới mang đến cho bạn bởi những người dùng Eclipse: http://www.eclipse.org/xtend/

Không thừa kế nhiều (đó sẽ là thay đổi cơ bản đối với ngữ nghĩa Java), nhưng rất nhiều cú pháp, giống như CoffeeScript.

Ngoài ra hãy xem tại Mirah: http://www.mirah.org/

+0

Thật tuyệt vời! +1 – thejh

+0

Điều đó thật tuyệt. Tôi vẫn nghĩ rằng bạn sẽ có thể làm nhiều thừa kế tương tự như cách tôi phải làm điều đó ngay bây giờ trong AspectJ (http://stackoverflow.com/q/7403617/318174). Có vẻ như dễ dàng để tạo mã MI. –

+0

Vâng, AspectJ không biên dịch sang Java, nói đúng. Bạn không thể thực sự làm AOP với mã Java thuần túy (hiệu quả). –

2

Nếu bạn nghĩ về nó, CoffeeScript biên soạn để Javascript có nghĩa là bạn có thể sử dụng coffeescript chính nó như là một ngôn ngữ Java. Với CoffeeScript mới nhất (1.1.3), bạn có thể cần phải sử dụng Rhino trực tiếp vì nó kích hoạt lỗi triển khai JS trong jdk hiện tại, nhưng bên ngoài đó, bạn nên sử dụng các tệp js đã biên dịch để tương tác với mã Java. :)

+1

+1 Một điểm tuyệt vời. Tuy nhiên tôi thích gõ tĩnh một chút tốt hơn so với gõ năng động. –

2

Tôi đã viết một bộ xử lý trước cho các tệp văn bản giới thiệu { s và } s nơi có thụt đầu dòng. Tôi gọi nó là:

Đó là hư không gần ổn định, và nó không đề cập đến một số phím tắt khác mà bạn chỉ ra rằng Coffeescript cung cấp, nhưng nó làm việc như một bằng chứng của -khái niệm.

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