ruby0 49原始碼分析 array c

2021-09-11 06:32:49 字數 496 閱讀 7890

ruby0.49原始碼分析……array.c

今天讀ruby0.49,感覺讀**的速度越來越快了。大腦好象開竅了。先讀makefile,根據基編譯順序,從下向上讀。

在array.c的上面定義了若干函式,在末尾把函式進行註冊。

檔案末尾 有init_string()函式

用rb_define_method()函式把定義的函式當成c_string的方法。

具體過程不了解。便大致的使用知道了。

於是接著讀其它過程。

發現st.c檔案很有意思。

在st.h標頭檔案中定義了乙個結構體,st_table,好象用於儲存變數及其值。在st.c中具體實現在結構體上的若干函式,類似於建立乙個資料庫,再對之進行增刪改操作。

讀了matz的**,感覺他寫的**還是很直白的,很通俗。

也許日本人也是東方人,思維較接近還是什麼的。總之,感覺和讀gawk時的感覺完全不同。也許ruby0.49是早版本。但感覺作者的想法還是很直接的。

接著讀**。

ruby 0 49原始碼分析

今天想想,讀讀ruby0.49的原始碼。用c寫東西,那是太慢了。真要幹活,還是用perl或者ruby.現在時間充足,就相看看ruby0.49。收到了王亞剛寫的gcc原始碼分析的書,他的版本太高,感覺還是讀最古老的版本較划算。量太大了,這何年何月才能看完呢。wget tar zxvf ruby 0.4...

ruby0 49原始碼分析2

ruby0.49原始碼分析2 週末重新打造讀程式的環境。在臥室裡布置了兩台電腦,每台筆記本加個顯示器。一台專門用於讀 另一台,專門用於寫測試程式,並把上網功能去掉。最大限度的保持專注。因為ruby中定義了資料結構,把資料結構的定義抄下來,然後貼在牆面上,就象警察破案一下,準備乙個大的工作板。發現證據...

ruby049原始碼分析 array c

fary entry ary,offset 是取陣列ary offset 的值,作者需要判斷下標是否在區間 0,ary.length 1 區間內,如果offset是負數,就把offset加上長度,這樣實現 a 1 指向陣列最後乙個元素的功能。因為 1 a.length 資料最後乙個元素的下標。如果下...