计算机科学

首页 > 计算机科学

BCPL

2018-09-05 18:11:28     所属分类:程序设计语言
BCPL
编程范型 过程式,命令式,结构化
设计者 马丁·理察德
发行时间 1966
启发语言
CPL
影响语言
B语言(间接影响C语言)

BCPL(Basic Combined Programming Language),是一种计算机程序设计语言,源自更早的CPL语言,1966年由剑桥大学的马丁·理察德(Martin Richards)所发展出来的。

Richards试着移除了CPL中最复杂的组成,第一支BCPL compiler在IBM 7094电脑中完成。

身为早期编程语言的BCPL,如今已不再广泛使用,但它的影响却是深远的,今日流行的C语言即是参考BCPL所设计。BCPL是第一支使用括弧语言,括弧特征在C语言中随处可见,例如

BCPL
LET FUNC foo(a) =  VALOF
{ b := a + 1
  RESULTIS b }
C语言改良自BCPL
for (int i =  0; i < 10; i++)
{
    printf("%d", i);
    doTask(i);
}

范例

下列是马丁查理斯的 BCPL distribution.

Printing factorials:

GET "libhdr"

LET start() = VALOF
{ FOR i = 1 TO 5 DO writef("fact(%n) = %i4*n", i, fact(i))
  RESULTIS 0
}

AND fact(n) = n=0 -> 1, n*fact(n-1)

N个皇后问题:

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("Number of solutions to %i2-queens is %i5*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
版权声明:本文由北城百科网创作,转载请联系管理获取授权,未经容许转载必究。https://www.beichengjiu.com/computerscience/340526.html

显示全文

取消

感谢您的支持,我会继续努力的!

扫码支持
支付宝扫一扫赏金或者微信支付5毛钱,阅读全文

打开微信扫一扫,即可进行阅读全文哦


上一篇:B语言
下一篇:BCY语言
相关推荐
爱淘宝