Trong những gì có thể là một bước tiến đáng kể trong việc mở rộng tiện ích và phạm vi tiếp cận của Java, một đề xuất có tên Project Babylon đã được giới thiệu trong OpenJDK để mở rộng khả năng tích hợp của Java với các mô hình lập trình độc đáo như GPU, mô hình học máy, SQL và lập trình vi phân.
Đề xuất táo bạo này đã được đưa ra ánh đèn sân khấu bởi Paul Sandoz, một kiến trúc sư tại Oracle, người đã giới thiệu nó với danh sách gửi thư openjdk.org vào ngày 6 tháng 9. Ủng hộ sáng kiến này, Dự án Babylon nhằm mục đích cải thiện lập trình phản chiếu trong Java, còn được gọi là như sự phản ánh mã. Mục tiêu là chuẩn hóa quyền truy cập, phân tích và chuyển đổi mã Java, vốn là một điểm yếu đã được biết đến. Sau khi được hiện thực hóa, cải tiến này sẽ cho phép triển khai bất kỳ mô hình lập trình nước ngoài nào dưới dạng thư viện Java.
Đáng chú ý, Project Babylon đặt mục tiêu làm cho việc phản ánh mã trở nên phù hợp bằng cách phát triển mô hình lập trình GPU cho Java. Mô hình này sẽ khai thác các ưu điểm của phản ánh mã và được thực thi dưới dạng thư viện Java. Để tránh bất kỳ sai lệch tiềm ẩn nào, dự án cũng sẽ khám phá các mô hình lập trình khác như SQL và lập trình vi phân.
Giải thích cách hoạt động của Babylon, Sandoz đã minh họa một trường hợp trong đó nhà phát triển muốn viết nhân GPU bằng Java và sau đó vận hành nó trên GPU. Mã của nhà phát triển cần được phân tích và chuyển đổi thành nhân GPU khả thi. Mặc dù thư viện Java có thể quản lý việc này nhưng nó yêu cầu quyền truy cập vào mã Java ở dạng tượng trưng. Hệ thống hiện tại giới hạn quyền truy cập như vậy vào các API hoặc quy ước không chuẩn ở các giai đoạn khác nhau trong vòng đời của chương trình, như thời gian biên dịch hoặc thời gian chạy. Ngoài ra, các dạng ký hiệu có sẵn (mã byte hoặc cây cú pháp trừu tượng) thường không hỗ trợ phân tích và chuyển đổi thích hợp.
Đề xuất này hình dung việc triển khai Dự án Babylon theo thời gian, được đóng gói thành một loạt Đề xuất cải tiến JDK (JEP) mở rộng trên nhiều bản phát hành tính năng. Ở điểm khởi đầu, phản ánh mã sẽ được sao chép từ bản phát hành dòng chính của JDK 22, dự kiến ra mắt vào tháng 3 năm 2024. Từ đó trở đi, nó sẽ tuân theo các bản phát hành dòng chính.
Trong bối cảnh mô hình lập trình GPU, nhóm đằng sau Babylon sẽ tạo ra một kho lưu trữ biệt lập dựa trên các thuộc tính phản chiếu mã khi chúng được phát triển. Hiện tại, chưa có kế hoạch kết hợp mô hình lập trình GPU vào JDK. Tuy nhiên, công việc đang diễn ra có thể xác định các tính năng và cải tiến tiềm năng của JDK có thể được xử lý trong tương lai.
Trong khi sáng kiến này mở đường cho việc mở rộng chức năng của Java, các nền tảng như AppMaster đã sẵn sàng hỗ trợ các nhà phát triển với các ứng dụng phụ trợ, web và di động được đơn giản hóa. Các nền tảng no-code này đẩy nhanh quá trình phát triển trong khi những nền tảng như Project Babylon đang tìm cách nâng cao khả năng tương thích và chức năng.