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

深度剖析Python歷史誕生問題

開發 后端
Google的Python語言之父 Guido van Rossum對于Python歷史、ABC 語言的影響,以及 Python語言最初的設計目標進行了改革性的試驗。

Guido van Rossum 是Python語言的作者,Python 是一門解釋性的、是一種面向對象、直譯式計算機程序設計語言,也是一種功能強大而完善的通用型語言,已經具有十多年的發展Python歷史了。

他工作的地方被叫做 Centrum voor Wiskunde en Informatica (CWI).從那時開始,Python 在開發者當中日益流行起來,這歸功于 Python 簡明清晰的語法和開發效率高的名聲。這次訪談會分為幾個部分,每周都會發布其中一篇.Van Rossum 會對下列議題給出他的真知灼見:Python 的設計目標,Python 程序員的工作效率來自何處。

弱類型意味著什么,等等.在第一篇中,Van Rossum Python 將對 Python 的歷史,受到的主要影響,及其設計目標娓娓道來.Bill Venners: 如果開發者從沒用過 Python,那你會怎么向他們描述這門語言呢?Guido van Rossum: 從一個方面說,你可以說 Python 是一個非常高階的語言。

而從另一個方面來看,你可以說它是一個非常高階的語言,它實現的方式正好讓它非常注重可交互性.Python 和腳本語言之間有著很多共同點,但是和更傳統的編程語言也有頗多共通之處.

ABC 對 Python 的影響Bill Venners: 您能簡要介紹一下 Python 的歷史么?Guido van Rossum: 在 1980 年代末,我在 Centrum voor Wiskunde en Informatica (CWI) 的一個小組里面做開發工作。

這個小組的任務是設計實現一門叫 ABC 的語言.我不清楚人們對 ABC 對Python歷史的影響有多少了解.我之所以會提及 ABC 的影響,是因為我在從事這個項目的時候,所獲良多,而且從共事的同事身上也學到了很多東西,我對他們非常感激。

ABC 的設計動機非常明確.ABC 希望成為一門編程語言,這門語言是為非計算機程序員或軟件開發者的那種比較聰明的計算機用戶而設計的。在 1970 年代末,ABC 的主設計師曾向這種用戶教授一些傳統的編程語言.他們的學生有各個學科的科學家:從物理學家、社會學家到語言學家。

為了使用超大型計算機,這些科學家需要幫忙.雖然這些人在自己的領域可算出類拔萃,他們還是對傳統語言所有的各種局限感到詫異和不適應.根據用戶的這個反饋,ABC 的設計者試圖去開發一門新的語言.

另一個讓 ABC 的設計者覺得失望的原因是 Basic.那時,Basic 是一門非常蹩腳的語言.雖然 Basic 也是為那種非程序員的計算機用戶而設計的。但是它設計的著眼點是完全不同的。

在那時,市面上所有的 Basic 版本都非常難用.幾乎所有好玩的 Basic 程序都遍布著底層的奇技淫巧,比如說,如果要把屏幕背景色變成黃色的話,就需要修改內存的第 714 字節。Bill Venners: 這個我也有印象.您是什么時候搞 ABC 的?Guido van Rossum: ABC 的作者在 70年代晚期和 80年代初期,開始這門語言的設計工作。

我于 1983 年加入這個小組.我想我們一直干到了 1986 年還是 1987 年.因為種種原因,ABC 項目并沒有獲得很大的成功.或許那時太早了,那個時候還沒有因特網可做大規模的推廣.

Python歷史的誕生

Guido van Rossum: 1986 年,我轉向了 CWI 的另一個叫 Amoeba (阿米巴蟲) 的項目.Amoeba 是一個分布式操作系統。直到 1980年代末,我們意識到需要一個腳本語言.在那個項目中,我享有很大的自由度,所以我啟動了一個迷你項目,這個小項目是服務于當時的我們手頭的 Amoeba 項目的。

那時,我對在 ABC 上獲得的經驗教訓記憶猶新.我決定,想辦法設計一門簡單的腳本語言,它將擁有 ABC 的優點,但卻沒有他的缺點.所以,我挽起袖子開始打鍵盤了.我實現了一個簡單的虛擬機,一個簡單的 parser,還有一個簡單的運行時庫.ABC 中每一個我欣賞的部分我都重新實現了一把。#t#

我還設計了一種基本的語法,它用縮進來表示語句之間的結合關系,而不是用花括號或者 begin-end 塊來表示程序結構。同時,我開發了幾個功能強大的數據結構:哈希表 (用來實現 dictionary,我們這樣稱呼它),列表,字符串,以及數字類型。

ABC 的設計者放棄了用來讀寫文件的 IO 的方法,他們轉而在程序里使用一些全局變量.他們的用戶對全局變量的概念應該了然于胸.所以 ABC 的設計者讓那些全局變量能持久化。

如果你退出一次編程會話,你所有的全局變量就被系統存到磁盤上的一個文件里.等到你下次啟動另一個會話,你所有的全局變量就會恢復回來.在某種程度上說,這一套運作得很好.這和 workspace 有幾分相像,比如說 Smalltalk 里的 workspace 就和這個差不多。

ABC 里有一個 print 語句,可以讓你在屏幕上輸出,還有一個 input 語句,讓你可以從鍵盤上讀入,但是 ABC 卻沒有辦法可以把 IO 重定向到文件,或者從文件重定向到 IO.實際上,可以說他們根本就沒有提供任何 IO 功能。

責任編輯:chenqingxiang 來源: 驅動之家
相關推薦

2010-02-01 13:34:59

Python 腳本

2010-03-01 16:48:02

Python模塊

2010-02-05 18:00:18

Android源代碼

2010-02-06 15:32:30

Android架構

2010-01-08 14:06:49

JSON 形式

2010-05-24 16:58:44

SVN安裝

2010-02-02 15:25:35

Python語法

2010-02-03 16:56:24

Python包

2010-03-01 14:50:06

Python 工具

2010-03-01 18:33:30

2010-01-27 15:50:23

C++復雜性

2010-02-07 15:42:46

Android單元測試

2010-01-27 09:31:39

C++Test測試

2010-02-02 13:22:06

Python面向對象

2010-02-03 09:35:20

Python函數編程

2010-02-03 11:26:28

2010-02-24 16:33:28

Python功能

2010-02-26 10:38:29

Python語言

2010-02-26 17:44:40

Python測試框架

2010-02-22 13:53:22

Python 中文亂碼
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 婷婷在线视频 | 新91视频网| 日本一区二区三区精品视频 | 九九热精品视频在线观看 | 欧美亚洲国产日韩 | 久国产 | 欧美日韩精品一区二区三区视频 | 免费在线观看一区二区三区 | 五月天天色| 精品国产乱码久久久久久闺蜜 | 国产欧美一区二区三区在线看蜜臀 | 中文字幕电影在线观看 | 91婷婷韩国欧美一区二区 | 免费不卡av | 99久久国产 | 亚洲一区二区视频 | 国产精品久久久久久久久图文区 | 狠狠的干| 国产精品成人一区 | 成人在线观看免费 | 一区二区在线不卡 | 亚洲成色777777在线观看影院 | 国产99久久精品一区二区永久免费 | 欧美三区在线观看 | 欧美一区二区在线观看 | 九九av| 日韩成人在线网址 | 欧美色综合 | a级片在线观看 | 做a视频在线观看 | 欧美国产精品 | 精品国产18久久久久久二百 | 国产视频中文字幕在线观看 | 日韩久久久一区二区 | 污片在线免费观看 | 韩日一区二区三区 | 激情欧美日韩一区二区 | 日韩在线免费 | 精品伦精品一区二区三区视频 | 国产传媒毛片精品视频第一次 | 久久高清精品 |