Bioperl
最近已經到了1.0版,先說bioperl.org,該組織正式成立于1995年,在此之前已經作為非正式的團體存在那很多年,現在他已經形成了一個國際
性的開發者的協會,這些開發者開發用于生物信息學,基因組學,和生命科學研究的開放源碼的Perl 工具.
該組織的支持者和推動者是Open Bioinformatics Foundation. 他們的伙伴還有biojava.org,
biopython.org, DAS, bioruby.org, biocorba.org, ENSEMBL 和 EMBOSS.
Bioperl的服務器提供供下列服務,用于生命科學的基于perl的模塊,腳本,web聯接的軟件.
Bioperl現在已發展成為一個令人矚目的國際性的自由軟件開發計劃,bioperl在生物信息學的使用加速了生物信息學、基因組學以及其他生命
科學研究的發展。最近bioperl 1.0版本正式發布,這其間歷時七年,成績斐然。Bioperl 1.0
包括832個文件,93個Script,功能豐富,源碼全部開放。它是生物信息學研究的利器。詳細的內容大家可以訪問www.bioperl.org。
Bioperl作為perl的擴充的專門用于生物信息的工具與函數集,自然也繼承了perl的眾多優點.
第一. Perl強大的正則表示式(regular
expression)比對以及字符串操作使這個工作變得簡單而沒有其它語言能相比。Perl
非常擅長于切割,扭轉,絞,弄平,總結,以及其它的操作文字文件。生物資料大部分是文字文件:物種名稱,種屬關系,基因或序列的注解,評住,目錄查閱,
甚至DNA序列也是類文字的?,F在互相交換以以文字文件的形式存在的但是具有不兼容的資料格式生物信息資料是一個很頭疼的問題,perl的這個方面的優
點,可以在這一方面解決不少問題.
第二. Perl 能容錯。生物資料通常是不完全的,錯誤或者說誤差從數據的產生時候可能就產生了.另外生物數據的某項值欄位可以被忽略
,可能是空著的,或是某個欄位也就是某個值,被預期要出現好幾次(舉例來說,一個實驗可能被重復的操作),或是資料以手動輸入所以有錯誤。Perl并不介
意某個值是空的或是有奇怪的字符。正規表示式能夠被寫成取出并且更正錯誤的一般錯誤。當然這種彈性也可能是各壞處。
還有,Perl 是組件導向的。Perl 鼓勵人們將他們的軟件寫成小模組,不論是用 Perl 函式庫模組或是正統的
Unix 工具導向的方式。外部程序能夠輕易的被整合進 Perl 程序,靠著管道(pipe),系統呼叫,或是插座(socket)。Perl5
引進的動態載入器允許人們使用 C 的函式,或者讓整個編程過的函式庫,被使用在 Perl
直譯器中。最近的成果是世界各地的智能結晶都會收錄在一組模組里面,稱為”bioPerl”(請參考 Perl Journal)
Perl
很容易去寫并且能很快開發完。直譯器讓你不需要宣告你所有的函數型式以及資料型態,當未定義的函式被呼叫時只會引起一個錯誤,除錯器也能與Emacs很好
的合作并且讓你能用令人舒服的交談式的開發模式。
Perl 是良好的原型語言。因為它快而且臟(quick and dirty),用 Perl
建構新演算的原型比直接寫成一個快的需要編程過的語言來的有意義。有時候發現結果是Perl已經夠快了,所以程序變不需要移植;更多情形是某人可以用C寫
一個小的核心程序,編程成動態載入的模組或是外部的可執行程序,然后其它的部分用Perl來完成。這部分的例子可以參考 http://waldo.wi.mit.edu/ftp/distribution/software/rhmapper/)。
有一點要強調的是, Perl 在寫作網頁 CGI
方面非常優秀,而且重要性隨著各實驗將資料發表在網絡上之后更是增加。我在基因中心環境下使用 Perl 的經驗從頭到尾都是值得稱贊的。然而我發現
Perl 也有它的問題。它的松散的程序風格導致許多錯誤,這些在其它嚴格的語言都會被抓到。舉例來說,Perl
讓你在一個變數在被指定值之前就能使用,這是個很有用的特性當你需要的時候,但是卻是一個災難當你單純的打錯了辨識名稱。同樣的,很容易忘記要宣告一個函
式里面的區域變數,導致不小心地改到了全域變數。
最后,Perl 的不足之處在于建立圖形化的使用者接口。雖然 Unix忠實信徒所有事情都能在命令模式下完成,大多數的終端使用者卻不同意。視窗,選單,彈跳的圖案已經變成了必要的時尚。
直到最近,直到最近,Perl 的使用者界面(GUI)發展仍是不成熟的。然而 Nick
Ing-Simmons的努力使得 perlTK(pTK) 的整合使得以 Perl 驅動的使用者接口在
X-window上面成為可能。我的伙伴和我曾經在 MIT 基因中心寫過幾個 pTK
為基礎的應用程序供互連網使用者,而且從頭到尾都是一個令人滿意的經驗。其它的基因中心則更大規模的使用 pTK,在某些地方已經成為主要的生產力。