Dlang là một trong những ngôn ngữ mà mình có hứng thú tìm hiểu và vọc vạch chơi. Có lẽ cảm giác thân thương về syntax (khá giống C++) cùng với những tính năng ưu việt (mà sau này C++ hiện đại dần dần mang sang phiên bản của họ) là những điều mà mình thực sự thích thú về dlang. Rất tiếc, ngôn ngữ này không có được một cộng đồng hỗ trợ mạnh mẽ và đông đảo như một số ngôn ngữ hiện đại khác như Rust hay Julia. Tuy vậy, trên các forum và reddit mình thấy đội ngũ phát triển cũng khá tích cực. Tuy là bao, nhưng mình cũng hi vọng bài viết này sẽ giúp dlang có thêm vài người (Việt) ủng hộ khác.

Khi sử dụng dlang, mình cảm nhận được sử thân thương từ 2 ngôn ngữ mà mình đã và đang gắng bó: C++ và Python. Gần như 80% syntax của Dlang là từ C++. Và những điểm khác, và thậm chí nổi bật của dlang lại khá giống với Python: ta có từ khóa import để sử dụng các module, ta có từ khóa in để kiểm tra 1 phần tử có tồn tại trong container hay không. Thậm chí, cách khai báo associated array rất giống cách khai báo Dict trong Python.

Tính năng

Mặc dù trang chủ đã đề cập chi tiết những tính năng đáng chú ý của dlang. Nhưng cá nhân mình khá thích một số tính năng sau:

Ngôn ngữ

Biểu thức của dlang hỗ trợ khá nhiều tính năng hay ho mà nhiều người (hoặc chí ít là mình) mong muốn ở C++:

Câu lệnh (statements) trong dlang là một sự cải tiến nhẹ nhàng từ C/C++. Và đây chính là điểm mà mình thấy rất ưng ý với dlang: mình không mất quá nhiều thời gian để học một ngôn ngữ mới bởi gần 90% những cú pháp cơ bản trong ngôn ngữ giống hệt 2 anh em C/C++, và một vài điểm cải tiến giúp đời sống người coder dễ thở hơn là một điều đáng hoan nghênh:

Generic Programming

Mình khá tiếc là phần document của dlang không thực sự chi tiết về Generic Programming xét về tính dễ đọc cho beginner. Nếu bạn đã từng thử generic programming trên C++ và cảm thấy nó quá đau thương, thì dlang thực sự giúp bạn xoay đi nỗi đau đó.