Mengapa Perl begitu banyak digunakan dalam Bioinformatika? [Tutup]

14

Ada apa dengan Perl yang membuatnya sangat berguna dalam Bioinformatika? Mengapa C ++ atau Matlab atau Python bukan bahasa besar?

Adel
sumber

Jawaban:

13

Apa yang membuat Perl sangat berguna untuk bioinformatika adalah 1) ini bahasa yang relatif mudah dipelajari, 2) ada banyak skrip yang sudah ada untuk digunakan, termasuk bioPerl dan 3) kemungkinan lab tempat Anda bekerja memiliki ratusan skrip dan modul , sudah ditulis dalam Perl.

Tingkat programmer kurang berkaitan dengan pilihan bahasa, maka tugas-tugas yang diminta darinya. Setiap pekerjaan lanjutan atau yang mahal secara komputasional biasanya ditulis dalam Java, atau C, dan dijalankan pada sebuah cluster.

Satu hal yang perlu dipahami tentang bioinformatika, adalah bidangnya beragam, dengan beragam tugas ditanyakan kepada mereka yang mempraktikkannya. Tidak jarang bagi saya untuk menggunakan Perl, R, dan Java dalam satu hari. Perl untuk hal-hal scripting, memindahkan file, mengunduh hal-hal, beberapa analisis data dasar dll, R untuk visualisasi data, dan Java untuk perhitungan algoritmik / bekerja dengan dan memodifikasi aplikasi. Yang sedang berkata, sebagian besar tugas saya memang memerlukan penggunaan Perl, namun, saya ingin beralih ke Ruby, karena ia memiliki fungsi yang lebih maju, lambdas & procs, yang dapat menyebabkan kode lebih ringkas dan sepenuhnya berorientasi objek.

wespiserA
sumber
1
sama-sama. Jika Anda memiliki pertanyaan lagi, atau sedang berpikir untuk terjun ke bidang ini, berikut ini adalah respons lain yang mungkin membantu Anda.
wespiserA
24

Selain dari sifat-sifat yang melekat dari Perl, bagian dari ini hanyalah sejarah. Ada ekspansi besar bioinformatika pada pergantian abad karena Proyek Genom Manusia. Pada saat Perl sejauh ini merupakan bahasa scripting yang paling populer dalam penggunaan umum . Ruby dan Python memang ada, tetapi hampir tidak memiliki dukungan / berbagi pikiran yang mereka lakukan hari ini. Ini memberi Perl banyak momentum di lapangan.

Saya pikir penggunaan Perl dalam bioinformatika menurun, dan R dengan cepat semakin populer. Tetapi untuk bahasa apa pun yang ingin Anda beri nama, Anda mungkin dapat menemukan lab bioinformatika yang menggunakannya.

Charles E. Grant
sumber
2
Sepakat. Saya ingat sebuah artikel, saya percaya pada Dr. Dobbs atau sesuatu seperti itu di pertengahan tahun 90-an dengan judul "Bagaimana Perl menyelamatkan Proyek Genom Manusia" atau sesuatu yang dekat dengan itu. Saya telah bekerja di ruang bioinformatika selama sekitar 10 tahun sekarang, dan belum menemukan seseorang yang benar-benar menggunakan Perl. Ini sebagian besar R dengan jumlah Matlab & Python yang lebih sedikit.
geoffjentry
6
Tidak seperti R yang akan menggantikan Perl. R digunakan untuk analisis data / visualisasi untuk data eksplorasi. Tugas skrip umum masih akan dilakukan dengan perl.
wespiserA
+1: Selain itu, tampaknya Jepang masih menggunakan Perl lebih banyak daripada Python atau Ruby (dari perekrut Jepang yang saya ajak ngobrol), jadi mungkin itu berdampak besar pada teknologi yang terlibat dengan penelitian Jepang, seperti dalam bioinformatika, di mana mereka adalah pemimpin dengan AS?
Klaim
@geoffjentry: Saya telah melihat cukup banyak pemrosesan yang dilakukan di Perl, meskipun saya tidak memiliki 10 tahun di lapangan (2, sejauh ini, ditambah beberapa pengalaman singkat beberapa tahun yang lalu). Namun, R adalah raja ketika perhitungan matematis diharapkan (analisis statistik pada kumpulan data besar terlintas dalam pikiran) dan untuk menghasilkan visualisasi yang baik (pada kenyataannya banyak solusi lebih memilih untuk hanya berintegrasi dengan Mesin R daripada memulai sendiri).
haylem
Dalam 8 bulan sejak saya menulis bahwa saya harus mengakui kembali pernyataan saya, sekarang saya telah melihat perl digunakan :). Dalam kasus-kasus itu meskipun masih tampak bersifat historis - baik kode lama atau seseorang yang memotong giginya menggunakan perl dan hanya terjebak dengan itu. Sebagian besar ahli biologi komputasi di pekerjaan baru saya menggunakan campuran (tergantung pada orang) dari python & r, dengan beberapa matlab dilemparkan ke dalam dan perl tersebut di atas.
geoffjentry
10

Saya akan menambahkan jawaban di sini karena saya pikir banyak dari mereka telah melewatkan poin kunci ...

Perl populer di bidang bio-informatika karena pada awalnya merupakan bahasa pemrosesan teks .

Teks adalah Raja

Perl membuatnya mudah untuk:

  • menerapkan algoritma NLP dan bio-informatika,
  • mengekstrak data tekstual,
  • menghasilkan data tekstual.

Bahasa Tidak Setengah Buruk

Ini juga memiliki manfaat memiliki:

  • sebuah ekspresi yang layak ,
  • kurva belajar yang relatif rendah (sampai Anda menemukan semua trik dan peretasannya) ,
  • tetapi juga kinerja yang layak .

Meskipun tidak memungkinkan untuk membuat program pemrosesan yang berjalan secepat setara dengan C, waktu pengembangannya jauh lebih rendah dan dilengkapi dengan baterai yang disertakan dalam hal pemrosesan teks ( ekspresi reguler yang kuat , siapa pun?), Sehingga membuatnya mudah untuk mengambil dan menggunakan dalam konteks lab untuk menyelesaikan tugas-tugas ini.

Portabilitas dan Ekstensibilitas Dimudahkan

Juga, itu jelas juga:

  • adalah portabel di banyak platform ,
  • dilengkapi dengan pustaka ekstensi yang sangat besar .

Tetapi alasan mengapa ada begitu banyak ekstensi dan modul bioinformatika (dan ilmiah pada umumnya) untuk Perl di tempat pertama adalah karena alasan yang diberikan di atas. Dalam banyak kasus, desain dan kemampuan bahasa membuatnya menjadi sangat pas (meskipun ada banyak dendam yang bisa ditahan seseorang) untuk pekerjaan itu.


Semua ini membuat Perl pesaing yang baik untuk penelitian ilmiah, terutama di bidang di mana data untuk diproses sebagian besar dalam format teks.

Tentu saja, bahasa lain telah muncul dan mengklaim pangsa pasar untuk alasan yang berbeda (peningkatan ekspresif, keterbacaan yang lebih baik, secara eksplisit menghindari peretasan yang tidak jelas dan guru-ish satu-garis ...), tetapi mereka masih bersaing dengan Perl pada aspek-aspek tertentu (Ruby adalah secepat belajar karena lambat untuk memproses data, misalnya). Jadi, dalam domain bioinformatika (atau NLP) tempat Anda menangani format teks, siklus penelitian cepat, dan semakin banyak data besar yang terus bertambah besar (terima kasih, genomik, dan NGS), Perl masih sangat relevan.


Sebenarnya, hanya memperhatikan komentar maple_shaft , Charles dan geoffjentry , yang menyebutkan pentingnya ekspresi reguler juga, jadi tidak semua orang mengabaikan ini. :)

haylem
sumber
6

Salah satu alasan utama di balik popularitas Perl dalam bioinformatika adalah BioPerl , satu set modul yang komprehensif untuk bekerja dengan data yang relevan.

Ini terlihat seperti sebagian besar modul sebenarnya dirancang untuk bekerja dengan data yang dihasilkan oleh program lain. Perl membuat baik rekaman pelaporan duct, setelah semua.

Charles
sumber
5

Alat dipilih oleh tingkat keahlian operator dan kemudahan adopsi - perlu beberapa saat untuk program yang dikompilasi atau IDE untuk menyalip bahasa yang ditafsirkan sederhana.

Perl memiliki beberapa potongan serius, dokumentasi serius, perpustakaan serius, dan ketersediaan gratis yang luas. Apa yang tidak disukai dari semua itu?

bmike
sumber
2

Perl memiliki semua kemampuan, konstruksi data, dan metode yang sama dari bahasa lain, dan lebih mudah dipelajari daripada kebanyakan. Ini bagus untuk para peneliti dan ilmuwan yang tidak terlalu berpengalaman dalam pemrograman, karena mereka dapat dengan mudah mengambil Perl dan menyelesaikan tugas yang diinginkan.

Selain itu:

Banyak dukungan online dan skrip gratis tersedia yang jelas menguntungkan! =)

Singkatnya, sebagian besar ilmuwan dan peneliti hanya ingin menyelesaikan pekerjaan, dan dilakukan secepat mungkin dan Perl sangat cocok untuk itu.

gila
sumber