BCPL
跳至導覽
跳至搜尋
頁面Module:Infobox/styles.css沒有內容。
| 腳本錯誤:沒有「InfoboxImage」這個模塊。 | |
| 腳本錯誤:沒有「InfoboxImage」這個模塊。 | |
| 編程範型 | 過程式,指令式,結構化 |
|---|---|
| 設計者 | 馬丁·理察德 |
| 釋出時間 | 1967年[1] |
| 當前版本 | Template:Software version |
| 型態系統 | 無類型(所有東西都是字) |
| 網站 | www |
| 受影響於 | |
| CPL | |
| 影響語言 | |
| B(間接影響C),Go[2] | |
腳本錯誤:沒有「Check for unknown parameters」這個模塊。
基本組合編程語言(Template:Langx),是一種電腦程式設計語言,源自更早的CPL語言,1967年由劍橋大學的馬丁·理察德所發展出來的[1] 。
概述[編輯]
Richards試着移除了CPL中最複雜的組成,第一支BCPL compiler在IBM 7094電腦中完成。身為早期程式語言的BCPL,如今已不再廣泛使用,但它的影響卻是深遠的,今日流行的C語言即是參考BCPL所設計[3]。BCPL被認定為第一個腳本錯誤:沒有「ilh」這個模塊。[4],作為BCPL後代語言,C語言使用花括號來表示塊結構。
範例[編輯]
下列是馬丁查理斯的BCPL發行中的範例。
打印階乘:
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)
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
$)
引用[編輯]
參考文獻[編輯]
- Martin Richards, The BCPL Reference Manual (Memorandum M-352, Project MAC, Cambridge, 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, 1974)
- Martin Richards, C. Whitby-Strevens, BCPL, the language and its compiler (Cambridge University Press, 1980) ISBN 0-521-28681-6
package.lua第80行Lua錯誤:module 'Module:Navbar/configuration' not found