BCPL

BCPL
Mẫu hìnhthủ tục, mệnh lệnh, cấu trúc
Thiết kế bởiMartin Richards
Xuất hiện lần đầu1967; 59 năm trước (1967)[1]
Kiểm tra kiểukhông có kiểu (mọi thứ đều là từ)
Ảnh hưởng bởi
CPL
Ảnh hưởng tới
B, C, Go[2]

BCPL ("Basic Combined Programming Language", hay "Ngôn ngữ lập trình kết hợp cơ bản") là một ngôn ngữ lập trình máy tính thủ tục, mệnh lệnh, và cấu trúc. Ban đầu được định dùng để viết trình biên dịch cho các ngôn ngữ khác, nhưng BCPL không còn được sử dụng phổ biến nữa. Tuy vậy, ảnh hưởng của BCPL vẫn còn với một phiên bản rút gọn và thay đổi cú pháp, gọi là B, là ngôn ngữ mà ngôn ngữ lập trình C dựa vào. BCPL giới thiệu một số tính năng của các ngôn ngữ lập trình hiện đại, gồm dấu ngoặc nhọn để phân định khối mã[cần dẫn nguồn]; biên dịch thông qua bytecode máy ảo; và 'chương trình "Hello, World!"' đầu tiên trên thế giới.

Ví dụ

(LƯU Ý: nếu các chương trình được chạy bằng phiên bản Cintsys hiện tại (tháng 12 năm 2018) của Martin Richards, LIBHDR, START và WRITEF phải được thay đổi sang chữ thường để tránh lỗi.)

In ra các giai thừa:

GET "LIBHDR"

LET START() = VALOF $(
	FOR I = 1 TO 5 DO
		WRITEF("%N! = %I4*N", I, FACT(I))
	RESULTIS 0
$)

AND FACT(N) = N = 0 -> 1, N * FACT(N - 1)

Giải pháp đếm cho bài toán tám quân hậu:

GET "LIBHDR"

GLOBAL $(
	COUNT: 200
	ALL: 201
$)

LET TRY(LD, ROW, RD) BE
	TEST ROW = ALL THEN
		COUNT:= COUNT + 1
	ELSE $(
		LET POSS = ALL & ~(LD | ROW | RD)
		UNTIL POSS = 0 DO $(
			LET P = POSS & -POSS
			POSS:= POSS - P
			TRY(LD + P << 1, ROW + P, RD + P >> 1)
		$)
	$)

LET START() = VALOF $(
	ALL:= 1
	FOR I = 1 TO 12 DO $(
		COUNT:= 0
		TRY(0, 0, 0)
		WRITEF("%I2-QUEENS PROBLEM HAS %I5 SOLUTIONS*N", I, COUNT)
		ALL:= 2 * ALL + 1
	$)
	RESULTIS 0
$)

Lịch sử

BCPL được hiện thực đầu tiên bởi Martin Richards của Đại học Cambridge in 1967.[1]

Tham khảo

  1. ^ a b "Martin Richards (2003 Computer Pioneer Award)". IEEE Computer Society. Bản gốc lưu trữ ngày 24 tháng 11 năm 2017. Truy cập ngày 24 tháng 11 năm 2017.
  2. ^ Pike, Rob (ngày 24 tháng 4 năm 2014). "Hello Gophers". Truy cập ngày 11 tháng 3 năm 2016.

Đọc thêm

  • Martin Richards, The BCPL Reference Manual Lưu trữ ngày 11 tháng 6 năm 2015 tại Wayback Machine (Memorandum M-352, Project MAC, Cambridge, MA, USA, July, 1967)
  • Martin Richards, BCPL - a tool for compiler writing and systems programming (Proceedings of the Spring Joint Computer Conference, Vol 34, pp 557–566, 1969)
  • Martin Richards, Arthur Evans, Robert F. Mabee, The BCPL Reference Manual (MAC TR-141, Project MAC, Cambridge, MA, USA, 1974)
  • Martin Richards, C. Whitby-Strevens, BCPL, the language and its compiler (Cambridge University Press, 1980) ISBN 0-521-28681-6

Liên kết ngoài

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.