thịt bò - Trực tuyến trên đám mây

Đây là lệnh bò có thể chạy trong nhà cung cấp dịch vụ lưu trữ miễn phí OnWorks bằng cách sử dụng một trong nhiều máy trạm trực tuyến miễn phí của chúng tôi như Ubuntu Online, Fedora Online, trình giả lập trực tuyến Windows hoặc trình giả lập trực tuyến MAC OS

CHƯƠNG TRÌNH:

TÊN


Bò - Thông dịch viên Brainfuck linh hoạt

SYNOPSIS


thịt bò [TÙY CHỌN] ... FILE

MÔ TẢ


Beef là một trình thông dịch linh hoạt cho ngôn ngữ lập trình Brainfuck.

Nó có thể được định cấu hình bằng các tùy chọn được mô tả bên dưới, giúp nó có thể chạy
Brainfuck các chương trình đưa ra các giả định về hành vi của thông dịch viên.

Beef không đặt giới hạn tùy ý cho kích thước của băng nhớ được chương trình sử dụng, và
cấp phát các ô nhớ khi chúng cần thiết.

LỰA CHỌN


-S, --store =
Chọn giá trị để lưu trong băng khi đạt đến cuối đầu vào.
mặc định là `không '(lưu trữ số 1); các giá trị có thể có khác là `eof '(lưu trữ -XNUMX,
giá trị thường được gán cho hằng số C EOF) hoặc `giống nhau '(để nguyên giá trị)

-NS, --bật-gỡ lỗi
Bật hỗ trợ gỡ lỗi. Theo mặc định, hướng dẫn gỡ lỗi không được thực thi

-ồ, --output-file =FILE
Ghi đầu ra của chương trình vào FILE

-tôi, --input-file =FILE
Đọc đầu vào của chương trình từ FILE

FILE có thể là đường dẫn cục bộ hoặc bất kỳ URI nào được GIO hỗ trợ. Nếu như FILE là đầu vào tiêu chuẩn `- 'hoặc
đầu ra tiêu chuẩn, tùy thuộc vào ngữ cảnh, sẽ được sử dụng.

ĐIÊN RỒ NGÔN NGỮ


Các chương trình Brainfuck hoạt động trên một băng bộ nhớ chứa một số lượng hầu như không giới hạn
tế bào; mỗi ô có thể lưu trữ một giá trị, có thể được xem dưới dạng ký tự hoặc
số nguyên (mã hóa ASCII của nó) tùy thuộc vào ngữ cảnh. Có một con trỏ trỏ
đến một trong các ô, được coi là ô hiện tại; con trỏ có thể được di chuyển
xung quanh tùy ý.

Tệp nguồn Brainfuck được tạo từ một số hướng dẫn của Brainfuck; bất kỳ ký hiệu nào là
không một hướng dẫn được coi là một bình luận và bị bỏ qua. Có nhiều ngoại lệ cho cái này
quy tắc, xem bên dưới.

Các hướng dẫn của Brainfuck là:

+ Tăng giá trị trong ô hiện tại lên một

- Giảm một giá trị trong ô hiện tại

> Di chuyển con trỏ sang phải một ô

< Di chuyển con trỏ sang trái một ô

[ Bắt đầu một vòng lặp. Các hướng dẫn có trong vòng lặp được thực thi miễn là
giá trị của ô hiện tại không phải là XNUMX

] Kết thúc một vòng lặp bắt đầu bởi một [hướng dẫn

, Đọc một ký tự từ đầu vào và lưu trữ nó trong ô hiện tại

. Ghi giá trị của ô hiện tại vào đầu ra

# Kết xuất nội dung của băng nhớ cho mục đích gỡ lỗi. Hướng dẫn này là
bị bỏ qua trừ khi có tùy chọn --enable-debugging

Nếu dòng đầu tiên của tệp nguồn bắt đầu bằng chuỗi ma thuật #! nó bị bỏ qua.
Điều này cho phép bạn thực hiện một chương trình Brainfuck mà không cần gọi Beef một cách rõ ràng, giống như bạn
sẽ làm cho ví dụ. một chương trình Python.

Biểu tượng ! có một ý nghĩa đặc biệt đối với Beef: nó đánh dấu sự kết thúc của mã chương trình và
đầu vào của nó. Nếu biểu tượng này có trong tệp nguồn, đầu vào thời gian chạy sẽ
được bỏ qua.

VÍ DỤ


Chương trình Hello World cổ điển có thể được viết bằng Brainfuck như

++++++++++ [> +++++++> +++++++++++> +++> + <<<< -]> ++.> +. + +++++
+ .. +++.> ++. << ++++++++++++++++.>. +++. ------ .-------- .> +.>.

Chương trình Brainfuck sau có thể được sử dụng để thay thế làm sao(1) tiện ích:

#! / usr / bin / thịt bò
, [.,]

Đó là tất nhiên giả sử bạn không cần bất kỳ làm sao(1) tùy chọn dòng lệnh ưa thích, bạn
có một lớp vỏ với khả năng chuyển hướng I / O đang hoạt động và cảm giác hài hước.

TÁC GIẢ


Andrea Bolognanieof@kiyuko.org>.

Sử dụng thịt bò trực tuyến bằng các dịch vụ onworks.net



Các chương trình trực tuyến Linux & Windows mới nhất