Skip to main content

Ngôn ngữ hình thức tự do là gì?

Ngôn ngữ hình thức tự do là ngôn ngữ máy tính trong đó mã hóa có thể được định vị trên bất kỳ dòng nào và vẫn còn hiệu lực.Điều này có nghĩa là một mã có thể bắt đầu trên một dòng, kết thúc một số dòng xuống và vẫn là một lệnh hợp lệ.Định vị đôi khi có phần quan trọng với các yếu tố được nhóm, bởi vì chương trình cần phải nằm trong nhóm, nhưng nó vẫn có thể được định vị trên bất kỳ dòng nào.Có một vài ngôn ngữ lập trình sử dụng các yếu tố ngôn ngữ dạng tự do, nhưng chúng không hoàn toàn tự do.Ưu điểm của loại lập trình này là các lập trình viên có thời gian gõ mã dễ dàng hơn nhiều mà không phải lo lắng về việc ngắt dòng, và cả bảo mật và khắc phục sự cố thường tốt hơn. Trong một số ngôn ngữ lập trình, định vị là rất quan trọng.Ví dụ: nếu một nửa lệnh nằm trên một dòng và nửa còn lại nằm trên một dòng khác, thì lệnh sẽ không bắt đầu, vì nó không hợp lệ.Với ngôn ngữ dạng tự do, có thể có vô số lần ngắt dòng và lệnh vẫn sẽ hợp lệ.Đồng thời, trong khi định vị không quan trọng, cú pháp là, vì vậy một số lệnh phải đến sau khi những người khác làm việc như dự định.

Tùy thuộc vào chính ngôn ngữ tự do, nhiều ngôn ngữ lập trình đã nhómcủa nhóm được bao quanh bởi dấu ngoặc đơn hoặc các nhân vật tương tự.Định vị thường quan trọng hơn một chút trong một bầu không khí được nhóm, bởi vì các lệnh phải nằm trong nhóm để có hiệu lực.Đồng thời, miễn là họ ở trong nhóm, không có vấn đề gì nếu tất cả các lệnh đều nằm trên một dòng hoặc nếu chúng có nhiều dòng ngắt. Hầu hết các ngôn ngữ lập trình đều có dạng tự do hoặc không, nhưng ở đólà một vài ngoại lệ trong đó một ngôn ngữ lập trình có thể kết hợp cả hai.Trong trường hợp này, nó giống như một ngôn ngữ dạng tự do ở chỗ một số yếu tố, chẳng hạn như bảng hoặc nhóm nhất định, có thể là dạng tự do, nhưng các yếu tố khác phải được định vị đúng.Các ngôn ngữ này thường chỉ có một vài yếu tố dạng tự do. Ưu điểm của ngôn ngữ dạng tự do có vẻ không lớn, bởi vì điều này chỉ cho phép lập trình viên đặt mã hóa trên bất kỳ dòng nào và có nó hoạt động, nhưng có một sốlợi thế lớn.Đối với một, lập trình viên không phải dành thời gian kiểm tra định vị thích hợp, vì vậy việc khắc phục sự cố mã không chính xác thường dễ dàng hơn.Nếu lập trình viên muốn tăng sự an toàn, thì anh ta có thể đặt tất cả các mã trên một đường dài ngang.Điều này rất khó đọc, khiến mọi người khó khăn hơn.