Y2L Sharp – Ngôn ngữ lập trình (thông dịch) đơn giản viết trên C#

Đây là một dự án mẫu về phương pháp hiện thực một ngôn ngữ lập trình đơn giản với tên gọi Y2L #. Phiên bản hiện tại 0.9 hỗ trợ các kiểu dữ liệu cơ bản bool, int, double, string, void và mảng 1 chiều. Chương trình thiếu phần kiểm tra cú pháp và còn nhiều hạn chế.

 

Đọc tiếp

Algorthrim – Tính giá trị của biểu thức toán học có sử dụng biến

Y2 Math Interpreter - OutputDựa vào kĩ thuật tính toán giá trị biểu thức số học trong bài Algorithm – Tính giá trị của biểu thức tiền tố và hậu tố , bạn có thể phát triển để viết một chương trình tính toán đơn giản có sử dụng biến. Việc hiện thực không quá phức tạp cũng như không đòi hỏi những kĩ thuật nâng cao. Để minh họa, trong bài này tôi sẽ viết một trình thông dịch toán học với các chức năng tính toán và nhập xuất cơ bản với tên gọi: Y2 Math Interpreter.

Đọc tiếp

Viết trình thông dịch stack-based đơn giản bằng C#

Trong bài viết trước tôi có giới thiệu sơ lược về ngôn ngữ lập trình Cat. Đây là một ngôn ngữ lập trình stack-based và chỉ hỗ trợ thông dịch. Việc hiện thực ngôn ngữ này không quá phức tạp tuy nhiên cũng đòi hỏi không ít thời gian. Vì thế, tôi sẽ sử dụng một phương pháp đơn giản để hiện thực một trình thông dịch tương tự mà ai cũng có thể hiểu một cách nhanh chóng. Tôi tạm đặt tên ngôn ngữ này là Mouse phiên bản 1.0 beta 1.

Đọc tiếp

A stack-based programming language: Cat

Ngôn ngữ lập trình stack-based (hay stack-oriented) là loại ngôn ngữ sử dụng stack để thực hiện các thao tác và tính toán. Một ví dụ cụ thể mà bạn có thể tìm thấy trong blog này là ngôn ngữ MSIL (CIL) mà tôi đã có một số bài hướng dẫn về nó tại đây.  Trong bài viết này tôi sẽ giới thiệu một ngôn ngữ stack-based đơn giản kèm mã nguồn C#. Đây sẽ là cơ sở để ta tạo ra một trình thông dịch đơn giản cho một ngôn ngữ lập trình của riêng bạn.

Đọc tiếp