Perl: Perbedaan antara revisi

Konten dihapus Konten ditambahkan
Lita Widi H (bicara | kontrib)
Fitur saranan suntingan: 3 pranala ditambahkan.
Iripseudocorus (bicara | kontrib)
perbaikan kesalahan tik
 
Baris 44:
'''Perl''' adalah [[bahasa pemrograman]] untuk segala keperluan, dikembangkan pertama kali oleh [[Larry Wall]] di mesin berbasis [[Unix]]. Perl dirilis pertama kali pada tanggal 18 Desember 1987 ditandai dengan keluarnya Perl 1. Pada versi-versi selanjutnya, Perl tersedia pula untuk berbagai sistem operasi varian Unix ([[SunOS]], [[Linux]], [[BSD]], [[HP-UX]]), juga tersedia untuk sistem operasi seperti [[DOS]], [[Microsoft Windows]], [[PowerPC]], [[BeOS]], [[VMS]], [[EBCDIC]], dan [[PocketPC]]. Dukungan terhadap pemrograman berbasis objek (''object oriented programming''/''[[OOP]]'') ditambahkan pada Perl 5, yang pertama kali dirilis pada tanggal 31 Juli 1993. Proyek pengembangan [[Perl 6]] dimulai pada tahun 2000, dan masih berlangsung hingga kini tanpa tanggal yang jelas kapan mau dirilis. Ini dikatakan sendiri oleh Larry Wall<ref>[http://www.perl.com/pub/a/2003/07/16/soto2003.html State of the Onion 2003]</ref> dalam satu pidatonya yang dikenal dengan seri ''[[The State of the Onion]]''.
 
Dua di antara [[#Karakteristik|karakteristik]] utama Perl adalah penanganan teks dan berbagai jalan pintas untuk menyelesaiaknmenyelesaikan persoalan-persoalan umum. Tidak heran jika Perl sangat populer digunakan dalam program-program [[CGI]] (''[[Common Gateway Interface]]'') dan berbagai [[protokol Internet]] lainnya. Seperti diketahui, [[TCP/IP]] sebagai basis bagi semua protokol Internet yang dikenal sekarang ini menggunakan format teks dalam komunikasi data. Seperti juga bahasa populer lainnya, Perl menerima banyak kritikan. Meski banyak di antaranya hanya berupa mitos, atau dilebih-lebihkan, tetapi terdapat juga sejumlah kritikan yang valid. Salah satunya adalah, sintaksnya susah dibaca, karena banyak menggunakan simbol-simbol yang bukan huruf dan angka.
 
== Fitur ==
Baris 123:
Beberapa programer Perl tertantang untuk membuat solusi ''oneliner'' untuk problem yang sama dengan jumlah karakter yang lebih pendek dan berkembanglah sebuah kompetisi yang disebut [[Perl Golf]] (lihat juga [[#Komunitas dan Budaya|Komunitas dan Budaya]]). Hal seperti ini bisa membuat sebagian orang kagum, namun bagi sebagian orang, semakin membuktikan bahwa Perl hanyalah bahasa untuk main-main, atau kalaupun untuk serius, tidak mudah diphami oleh orang lain, bahkan oleh programernya sendiri setelah beberapa waktu kemudian. Lelucon yang diberikan kepada Perl tentang ini adalah ''write only'', artinya program hanya bisa ditulis, tetapi tidak bisa dibaca.
 
Sebenarnya tidak demikian. Perl menyediakan berbagai fasilitas bagi penggunannyapenggunanya untuk menulis program dalam berbagai gaya dan bentuk sesuai dengan keperluannya. Dalam hal ini Perl memperkenalkan motto '''TMTOWDI''', dalam bahasa Inggris ini adalah singkatan dari ''There's More Than One Way To Do It'', atau terjemahan bebasnya, terdapat lebih dari satu cara untuk menyelesaikan suatu persoalan. Tanpa bisa dihindari, motto ini juga menjadi sumber kritikan. Artinya, Perl tidak memiliki standar penyelesaian masalah. Padahal tidak demikian. Hanya karena terdapat lima atau selusin cara untuk menyelesaikan masalah bukan berarti semua cara tersebut setara dalam berbagai aspek kualitas. Dan, dokumentasi Perl penuh dengan berbagai contoh penggunaan yang direkomendasikan, dan juga contoh penggunaan yang tidak direkomendasikan dengan berbagai alasan.
 
Seperti juga bahasa lainnya, Perl menyediakan fasilitas pemrograman standar seperti penggunaan variabel, fungsi (''built-in function''), kontrol logika (''if-else''), dan iterasi (<code>while, for, foreach</code>). Kontrol ''switch'' baru akan disediakan di [[Perl 6]], namun di Perl 5 dapat diemulasikan dengan mudah. Perl membolehkan programer untuk membuat fungsi sendiri (''subroutine''), mengenalkan pembatasan cakupan variabel secara hirarkis, penggunaan komentar, serta pembuatan dokumentasi terstruktur bersandingan dengan kode program. Sejak Perl 5 dikeluarkan, Perl mendukung pemrograman berbasis objek ([[OOP]]), disusul kemudian dengan ''[[thread programming]]'', serta memperbaharui penggunaan ''namespace''. Fasilitas yang paling digemari pengguna Perl, ''[[regular expression]]'' (atau ''regex''), telah ada sejak Perl 2. Dari versi ke versi regex makin dikembangkan sehingga diakui sebagai implementasi regex paling lengkap.<!-- butuh referensi, lupa pernah baca dimana --> Tidak heran kemudian muncul implementasi regex yang dikenal sebagai [[PCRE]], atau ''Perl-compatible regular expression''.
 
Perl menyediakan sejumlah fasilitas untuk memastikan bahwa programer dapat membuat program yang aman dari serangan ''[[cracker]]''. Jika programer menginginkan, Perl menyediakan linkunganlingkungan pemrogaman yang lebih ketat yang akan menangkap kesalahan atau potensi kesalahan sekecil apapunapa pun sebelum program bisa dijalankan. Fasilitas pemrograman berorientasi jaringan sudah terintegrasi, juga penanganan dan pemrosesan berkas (''file handling'') dan setara berkas (seperti diketahui, di sistem [[Unix]] dan variannya, segala sesuatu dianggap berkas dan bisa diperlakukan sebagai berkas). SebelumnSebelum ''threading'' diperkenalkan, Perl sudah menyediakan fasilitas untuk menjalankan lebih dari satu proses secara paralel.
Sebagai bahasa yang diciptakan dalam tradisi [[Unix]], Perl sedari awal mendukung pembuatan program yang bisa berinteraksi dengan program lain yang ada di sistem, sehingga bisa dijalankan seperti diilustrasikan di bawah ini: