成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

世界上最讓人抓狂的編程語言:BANCStar

開發 開發工具 后端
想象一下,上班第一天就被交給了這樣一些程序代碼。1990年2月,我就是這樣的。一個7人組成的團隊維護著一批打印到紙上能有幾百頁的這樣的代碼,都是已經發布到生產環境的。并不是我們發明了它們,只是我們不得不要用它們。

[[85499]]

下面是一段 BANCStar 語言的程序代碼:

  1. 2999,,,  
  2. 8600,,,1  
  3. 3000,829,6,30089  
  4. 10829,2446,22245,22012  
  5. 11585,15855,22002,22002  
  6. 11586,15865,22002,22002  
  7. 11587,15875,22002,22002  
  8. 11588,15885,22002,22002  
  9. 11596,15965,22002,22002  
  10. 11597,15975,22002,22002  
  11. 11598,15985,22002,22002  
  12. 11599,15995,22002,22002  
  13. 11600,16005,22002,22002  
  14. 11601,16015,22002,22002  
  15. 11602,16025,22002,22002  
  16. 11603,16035,22002,22002  
  17. 11604,16045,22002,22002  
  18. 11605,16055,22002,22002  
  19. 11606,16065,22002,22002  
  20. 11607,16075,22002,22002  
  21. 11608,16085,22002,22002  
  22. 11609,16095,22002,22002  
  23. 11610,16105,22002,22002  
  24. 11611,16115,22002,22002  
  25. 11612,16125,22002,22002  
  26. 11613,16135,22002,22002  
  27. 11614,16145,22002,22002  
  28. 11615,16155,22002,22002  
  29. 11616,16165,22002,22002  
  30. 11617,16175,22002,22002  
  31. 11618,16185,22002,22002  
  32. 11619,16195,22002,22002  
  33. 11620,16205,22002,22002  
  34. 11621,16215,22002,22002  
  35. 11622,16225,22002,22002  
  36. 11623,16235,22002,22002  
  37. 11624,16245,22002,22002  
  38. 11625,16255,22002,22002  
  39. 11626,16265,22002,22002  
  40. 11627,16275,22002,22002  
  41. 11628,16285,22002,22002  
  42. 11629,16295,22002,22002  
  43. 11630,16305,22002,22002  
  44. 11631,16315,22002,22002  
  45. 11632,16325,22002,22002  
  46. 11638,16385,22002,22002  
  47. 11639,16395,22002,22002  
  48. 11677,22002,22002,22002  
  49. 11678,22002,22002,22002  
  50. 11679,22002,22002,22002  
  51. 11680,22002,22002,22002  
  52. 11691,22002,22002,22002  
  53. 11693,22002,22002,22002  
  54. 11707,22002,22002,22002  
  55. 11749,22002,22002,22002  
  56. 3001,351,2,  
  57. 10190,3512,22002,22002  
  58. 10191,3522,22002,22002  
  59. 10192,3522,22002,22002  
  60. 10193,3522,22002,22002  
  61. 3000,192,1,  
  62. 10193,1902,1912,1922  
  63. 10863,3552,22002,22002  
  64. 10864,3562,22002,22002  
  65. 10865,3572,22002,22002  
  66. 10866,3582,22002,22002  
  67. 10867,3592,22002,22002  
  68. 10505,3662,22002,22002  
  69. 10414,3912,22002,22002  
  70. 10415,3922,22002,22002  
  71. 10416,3932,22002,22002  
  72. 10563,4072,22002,22002  
  73. 10562,4082,22002,22002  
  74. 10566,4102,22002,22002,  
  75. 3001,,,  
  76. 31597,10001,716,108  
  77. 31598,10001,785,108  
  78. 31599,10001,717,108  
  79. 31600,10001,710,107  
  80. 31601,10001,786,108  
  81. 31602,10001,715,108  
  82. 31603,10001,787,108  
  83. 31604,10001,714,108  
  84. 31605,10001,713,108  
  85. 31606,10001,712,108  
  86. 31607,10001,711,108  
  87. 31608,10001,765,108  
  88. 31609,10001,766,108  
  89. 31617,10001,767,108  
  90. 31618,10001,768,108  
  91. 31619,10001,769,108  
  92. 31620,10001,770,108  
  93. 31621,10001,771,108  
  94. 31622,10001,772,108  
  95. 31623,10001,776,108  
  96. 31624,10001,777,108  
  97. 31625,10001,778,108  
  98. 31626,10001,779,108  
  99. 31627,10001,780,108  
  100. 31628,10001,781,108  
  101. 31629,10001,782,108  
  102. 31630,10001,797,108  
  103. 31631,10001,763,108  
  104. 31632,10001,764,108  
  105. 8500,,2,  
  106. 1254,2301,1,-2301 

想象一下,上班***天就被交給了這樣一些程序代碼。1990年2月,我就是這樣的。一個7人組成的團隊維護著一批打印到紙上能有幾百頁的這樣的代碼,都是已經發布到生產環境的。并不是我們發明了它們,只是我們不得不要用它們。作為奇聞軼事,我在這里展示一張這些代碼殘存的文檔的圖片,這個文檔格式是使用我開發的一個工具生成的,它僅可能的模仿了早期我們那些程序員在紙上那筆來研究這些文檔的樣子。

screen shot

關于這段代碼

紙上的這些代碼是C16LNAPP.SCN里的一段,只是打印出來的***頁,它是1990年代美國一家大商業銀行——位于華盛頓的***洲際銀行(First Interstate Bank)在生產環境里使用的一段代碼。如今它已經沒有用處理,我征得了當時參與人的同意,出于樂趣,公布在這里。

再來一段

下面的這段代碼也是來自生產系統環境。我并不太擔心在這里公布這么多具有版權問題的代碼信息,因為這世界上大概只有10個人能看懂它們。

  1. 8607,,,1  
  2. 11547,15475,22002,22002  
  3. 1316,1629,1,1649   
  4. 3001,1316,3,30078  
  5. 11528,22052,22002,22002  
  6. 9301,0,1528,1528  
  7. 31568,10001,800,107  
  8. 8560,,,1568  
  9. 8550,210,,  
  10. 3001,,,  
  11. 3100,1316,3,30089  
  12. 11547,15475,22002,22002  
  13. 3001,1316,3,30089  
  14. 3001,1317,3,10000  
  15. 8400,,,  
  16. 8550,700,801,  
  17. 3001,,,  
  18. 9301,0,522,522  
  19. 3000,1284,3,10001  
  20. 8500,,3,  
  21. 8500,,5,  
  22. 1547,,1,-2301 

像這樣打印出來的代碼文件我估計有1350多張,大部分每張上都有幾百行,有些甚至上千行。***洲際銀行的銀行分部用這些程序來處理業務。

BANCStar語言里一些有趣的特征:

  • BANCStar程序里僅有的合法字符就是數字0-9,逗號,減號,和回車符。不允許有空行。文件中的任何地方如果有一個“.”出現,編譯器就會崩潰。
  • 注釋是絕對不允許的。
  • 有控制結構,包括3000 (“if”), 3001 (“end if”)和
    3101 (“else if”),還有8500 (“GOTO”) 和 8550 (“組合GOTO”).
  • 有一個硬性規定,在整個系統中變量+常量不能超過2000個。任何需要顯示到屏幕上或打印到表單里的東西都要被定義成常量,因此,它們都要占用有限的資源空間。結果,大多數的計算的完成都由使用數十個“臨時寄存”變量,而這變量會被系統不斷的重復利用。系統中所有的東西都是全局的。開發新模塊的程序員的***要做的是在系統中找一些這些臨時寄存的數字,“借”過來使用,完成自己的計算,并且要在這些寄存器真正的主人發現他們存放的數字不見了之前,把最初的值恢復回去。
  • 代碼里的標簽(Label)使用的都是絕對行址,于是,一旦有新代碼插入,所以插入行之后的代碼涉及到GOTO操作的都要重新定位和鏈接。

我能記得的一些細節

BANCStar 代碼實際上是用一個“屏面生成程序(screen generator)”生成的,這個工具最初大概是用來可視化編程的。但5.1c版的這個生成器功能太有限,一些有經驗的程序員很快就開始研究它的工作原理,并且開始直接修改它生成的中間代碼,這些中間代碼就是生產環境實際運行的代碼。

我在1990年代初來到西雅圖,加入了這個由7個程序員組成的開發小組,這個小組的日常工作就是用BancSTAR機器語言直接編寫代碼,完全放棄了那個代碼生成器。當他們***次向我展示這種語言時,我認為他們在跟我開玩笑。但幾個星期后,我也開始學會閱讀和編寫這種代碼了——借助于每個BancSTAR語言程序員最喜愛的工具:一個點陣打印機,一大把各種顏色的用于高亮某段代碼的彩筆,以及一種紙帶,上面打印滿了各種系統提示表格,類似速查手冊。在每次系統有任何修改變動后,我們都認真的、小心翼翼的修改相關數據、文檔。(關于重復使用的臨時寄存器,我可不是在開玩笑;如果你需要用到一個常量整數1000,你就需要到程序去尋找,看看其他人是否在其它地方使用了相同的值,你要把你的程序鏈接到這個地方,并期望在你使用它的過程中不被其他人修改。)

我們開發了一些內部工具來幫助我們用BancSTAR語言編寫大型應用,還曾經將這些應用向這種語言的所有者Broadway & Seymour公司展示,但我想他們絕對不會相信我們是直接用他們底層的、沒有文檔說明的機器代碼編寫的。

英文原文:The Worst Programming Environment in the World?

譯文鏈接:http://www.aqee.net/bancstar/

責任編輯:林師授 來源: 外刊IT評論
相關推薦

2020-05-25 14:17:49

碼農編程語言GitHub

2025-04-22 11:10:00

2018-12-04 15:46:53

編程語言Python

2020-05-25 16:22:44

編程語言PythonJava

2018-07-19 19:07:33

語言編程語言程序

2019-11-18 15:07:54

編程語言C#

2025-03-13 00:35:00

2016-01-04 17:53:27

創始人2015失利

2010-02-25 11:02:29

JavaScript

2022-09-19 21:34:04

PHPFacebook語言

2020-11-16 09:38:08

編程語言EmojiEmojicode

2013-09-16 11:12:51

編程環境開發

2010-07-15 16:21:22

編程語言

2016-01-07 16:14:59

虛擬世界現實

2010-07-12 13:43:48

編程語言

2018-11-06 12:22:18

排序算法代碼

2023-02-28 08:59:47

PythonJavaJavaScript

2013-05-08 09:38:28

InteropNetSDN網絡設備供應商

2020-06-08 10:21:56

操作系統C語言Unix

2023-10-08 09:38:06

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 中文字幕第十五页 | 午夜爽爽爽男女免费观看影院 | 日韩亚洲欧美一区 | 国产精品毛片一区二区在线看 | 亚洲国产精品99久久久久久久久 | h片在线免费看 | 夜夜夜久久久 | 日日夜夜草| 毛片黄片免费看 | 精品一区二区在线观看 | 99草免费视频 | 欧美成人黄色小说 | 久久久成人免费一区二区 | 午夜视频免费在线观看 | 国产精品久久久 | 一区二区国产精品 | 欧美一区二区三区在线免费观看 | 久久不射电影网 | 久久精品综合 | 久久久精品在线 | 波多野结衣先锋影音 | 中文字幕精品一区二区三区在线 | 久久精品国产99国产精品 | 成人免费黄色 | 欧美日韩在线一区二区三区 | 狠狠天天 | 国产日韩欧美综合 | 日韩中文字幕一区二区 | 9久久| 中文字幕一区在线观看视频 | 国产ts人妖一区二区三区 | 性色av香蕉一区二区 | 三级在线视频 | 日韩欧美在线观看视频 | 国产在线小视频 | 国产精品96久久久久久 | 北条麻妃av一区二区三区 | 国产精品96久久久久久 | 久久久综合久久 | 免费成人在线网站 | 欧美阿v|