Ngôn_ngữ_kịch_bản


Ngôn ngữ kịch bản hoặc ngôn ngữ kịch bảnngôn ngữ lập trình cho môi trường thời gian chạy đặc biệt tự động hóa việc thực hiện các tác vụ; các tác vụ thay thế có thể được thực thi từng cái một bởi một toán tử con người. Ngôn ngữ kịch bản thường được diễn giải (thay vì biên dịch).Nguyên thủy thường là các tác vụ cơ bản hoặc các lệnh gọi API[cần giải thích] và ngôn ngữ cho phép chúng được kết hợp thành nhiều chương trình hơn. Các môi trường có thể được tự động hóa thông qua tập lệnh bao gồm các ứng dụng phần mềm, trang web trong trình duyệt web, sử dụng hệ vỏ của hệ điều hành, hệ thống nhúng, cũng như nhiều trò chơi. Một ngôn ngữ kịch bản có thể được xem như một ngôn ngữ dành riêng cho miền cho một môi trường cụ thể; trong trường hợp kịch bản một ứng dụng, nó còn được gọi là ngôn ngữ mở rộng . Ngôn ngữ kịch bản đôi khi cũng được gọi là ngôn ngữ lập trình cấp cao , vì chúng hoạt động ở mức độ trừu tượng cao hoặc là ngôn ngữ điều khiển , đặc biệt đối với ngôn ngữ kiểm soát công việc trên máy tính lớn.Thuật ngữ "ngôn ngữ kịch bản" cũng được sử dụng một cách lỏng lẻo để chỉ các ngôn ngữ có mục đích chung cấp cao năng động , như Perl,  PowerShell, Python và Tcl với thuật ngữ "tập lệnh" thường được sử dụng cho các chương trình nhỏ (lên đến vài nghìn dòng mã) trong các ngôn ngữ đó hoặc trong các ngôn ngữ dành riêng cho tên miền như ngôn ngữ xử lý văn bản sed và AWK. Một số ngôn ngữ này ban đầu được phát triển để sử dụng trong một môi trường cụ thể và sau đó được phát triển thành ngôn ngữ dành riêng cho miền di động hoặc mục đích chung. Ngược lại, nhiều ngôn ngữ có mục đích chung có phương ngữ được sử dụng làm ngôn ngữ kịch bản. Bài viết này thảo luận về các ngôn ngữ kịch bản theo nghĩa hẹp của các ngôn ngữ cho một môi trường cụ thể.Phổ của các ngôn ngữ kịch bản bao gồm từ các ngôn ngữ rất nhỏ và có tính đặc hiệu miền cao đến các ngôn ngữ lập trình có mục đích chung được sử dụng để viết kịch bản. Các ví dụ tiêu chuẩn về ngôn ngữ kịch bản cho các môi trường cụ thể bao gồm: Bash, cho các hệ điều hành giống Unix hoặc Unix; ECMAScript (JavaScript), dành cho trình duyệt web; và Visual Basic cho Ứng dụng, cho các ứng dụng Microsoft Office. Lua là một ngôn ngữ được thiết kế và sử dụng rộng rãi như một ngôn ngữ mở rộng. Python là ngôn ngữ có mục đích chung cũng thường được sử dụng làm ngôn ngữ mở rộng, trong khi ECMAScript vẫn chủ yếu là ngôn ngữ kịch bản cho các trình duyệt web, nhưng cũng được sử dụng làm ngôn ngữ cho mục đích chung. Phương ngữ Lisp của Emacs của Lisp (dành cho trình soạn thảo Emacs) và phương ngữ Visual Basic cho Ứng dụng của Visual Basic là các ví dụ về phương ngữ ngôn ngữ kịch bản của các ngôn ngữ có mục đích chung. Một số hệ thống trò chơi, đáng chú ý là thế giới ảo Cuộc sống thứ hai và nhượng quyền thương mại mô phỏng Railroad của Trainz đã được mở rộng về chức năng bằng các phần mở rộng kịch bản (Linden Scripting Language và TrainzScript). Trong các trò chơi khác như Wesnoth, sự đa dạng của các trò chơi thực tế do người chơi chơi là các kịch bản được viết bởi người dùng khác.