Perl adalah bahasa skrip. Itu sudah tua. Itu dihormati. Itu ada dimana-mana. Jika Anda pernah melihat skrip CGI menjalankan aplikasi web dasar dari akhir tahun 90an, Anda sedang melihat Perl.
Ia melakukan dua hal dengan baik. Pertama, ini menggantikan file batch DOS dan skrip shell C. Kedua, ini mendukung server web. Itulah konteks yang penting saat ini.
Kabar baiknya? Kode sumber gratis. Pengembang memberikannya. Anda dapat mengunduh ribuan skrip. Anda dapat mempelajarinya. Anda bisa menghancurkannya.
Berita buruknya? Banyak dari kode itu tidak dapat dibaca. Perl mendorong gaya yang begitu samar sehingga mendekati kebingungan. Jika Anda tidak tahu apa yang Anda lakukan, Anda tidak akan tahu apa yang Anda baca.
Panduan ini mengasumsikan Anda sudah membuat kode. Jika Anda tahu C, Anda unggul. Jika tidak, mulailah dari sini. Kami melewatkan filosofinya. Kita masuk ke sintaksisnya.
Menjalankan Interpreter
Anda memerlukan penerjemah Perl.
Jika Anda menggunakan UNIX, mungkin itu ada. peluang 99,99%. Periksa terminal Anda.
Jika Anda menggunakan Windows atau Mac, kunjungi situs resminya. Unduh rilis terbaru. Instal itu. Perlnya gratis. Ini adalah sumber terbuka. Sudah ada sejak tahun 1987. Jangan terlalu memikirkan instalasinya.
Setelah terinstal, temukan direktori DOCS. Itu datang dengan paketnya. Pindai itu. Jangan membaca setiap kata dulu. Itu padat. Ini kering. Tapi itu akurat. Anda akan membutuhkannya nanti ketika dasar-dasarnya sudah tidak masuk akal.
Skrip Pertama Anda
Tetapkan jalan Anda. Sertakan Perl yang dapat dieksekusi. Buka editor teks. Buat file bernama test1.pl.
Ketik ini:
Simpan itu. Buka prompt perintah Anda. Jenis:
Anda akan melihat “Halo Dunia!” di layar. Itu sangat bagus. Itu keluaran standar.
Di UNIX, Anda dapat menambahkan #!/usr/bin/Perl ke baris pertama. Kemudian Anda cukup mengetik ./test1.pl. Pembersih. Lebih cepat.
Perintah print menghasilkan output ke stdout. \n adalah umpan baris. Sederhana.
Coba ini:
Dua baris. Satu perintah.
Mengapa ini berhasil? Karena tanda kutip ganda. Di Perl, tanda kutip ganda memicu interpretasi quoting. Ini mem-parsing karakter pelarian.
Gunakan tanda kutip tunggal?
Sekarang Anda melihat teks literal. \n tetap sebagai \n. Tidak ada interpretasi. Tidak ada keajaiban.
Ada juga karakter backquote: `.
Ini menjalankan perintah sistem operasi. Outputnya dicetak ke layar. Di Windows, cmd /c diperlukan. dir tidak dapat dieksekusi. Ini adalah perintah bawaan dari penerjemah perintah.
Jika Anda mencoba print 'dir'; pada Windows NT, gagal. Anda membutuhkan pembungkus cangkang.
Perhatikan karakter /. Ini digunakan untuk ekspresi reguler. Anda akan melihatnya di mana-mana.
print menggunakan koma sebagai pemisah:
Ini juga membutuhkan waktu sebagai operator penggabungan:
Titik menggabungkan string. Koma memisahkan argumen.
Pemrogram C akan menyukai printf. Ia bekerja persis seperti C.
Variabel dan Tipe Data
Variabel Perl tidak memerlukan deklarasi. Mereka ada saat Anda menugaskannya.
Selalu gunakan simbol *.
Tanda kutip ganda mengartikan pelolosan. Kutipan tunggal tidak.
Angka juga berfungsi.
\t adalah sebuah tab. Perl menanganinya.
Penggabungan string menggunakan titik:
Singkatan itu ada. .= berfungsi seperti +=.
Array
Array dimulai dengan @.
Array tidak diindeks. Seperti C. Seperti Java. Seperti Python.
Notasi $#a memberi Anda indeks tertinggi. Bukan hitungannya. Indeks. Jadi jika Anda memiliki tiga item, $#a adalah 2.
Hash
Hash dimulai dengan %. Keduanya adalah pasangan nilai kunci.
‘bar’ ditautkan ke ‘anjing’. ‘mengeong’ menjadi ‘kucing’.
Ada sintaks yang lebih bersih. Operator =>.
Ini mengutip sisi kiri. Ini bertindak sebagai koma. Itu membuat kode dapat dibaca. Gunakan itu.
Perl menjadi mudah setelah Anda berhenti melawan sintaksisnya. Dasar-dasarnya sangat mudah. Hal-hal tingkat lanjut adalah hal-hal yang menjadi aneh. Tetap berpegang pada inti. Kuasai variabelnya. Kuasai aturan kutipan.
Sisanya hanyalah pola. Dan kebiasaan buruk.
Jika Anda pernah menghabiskan waktu di C, sintaks Perl akan terasa familier. Ia banyak meminjam dari garis keturunan tersebut, namun hal ini melonggarkan cengkeraman pada ketegasan.
Ambil loop untuk. Ini terlihat persis seperti yang Anda harapkan:
Anda juga dapat mengandalkan pernyataan sementara untuk iterasi yang lebih sederhana. Di sini, variabel bertambah di dalam blok:
Gerbang logika mengikuti aturan yang sama seperti C. Gunakan && untuk “dan”, || untuk “atau”, dan ! untuk “tidak”.
Catatan: Perl menawarkan rangkaian operator perbandingan kedua untuk string. Sementara
==memeriksa kesetaraan numerik,eqmemeriksa kesetaraan string.
Operator numerik tetap standar:
– == (sama)
– != (tidak sama)
– <, <=, >, >=
Namun jika Anda berurusan dengan teks, Anda mungkin lebih memilih alternatif berbasis kata:
– sama (sama)
– ne (tidak sama)
– lt (kurang dari)
– le (kurang dari atau sama dengan)
– gt (lebih besar dari)
– ge (lebih besar atau sama dengan)
Iterasi Melalui Array
Mengulang koleksi di Perl menjadi mudah berkat foreach. Ini menugaskan setiap elemen array ke variabel skalar satu per satu.
Di sini, $b mengambil nilai ‘anjing’, lalu ‘kucing’, lalu ‘belut’. Perulangan berakhir ketika array @a habis.
Aturan Penjepit
Ada satu aturan sintaksis yang tidak dapat dinegosiasikan di Perl: braces.
Anda harus menggunakan * dan *} untuk membungkus blok kode, meskipun blok tersebut hanya berisi satu baris.
Lewati tanda kurung kurawal, dan kompiler akan mengeluh.
Menulis Subrutin
Fungsi di Perl didefinisikan menggunakan kata kunci sub.
Saat Anda memanggil subrutin, semua argumen yang diteruskan ke subrutin tersebut dimasukkan ke dalam array khusus yang disebut @_.
Variabel $#_ mengembalikan indeks tertinggi dari array @_. Karena array diindeks nol, ini secara efektif memberi Anda jumlah parameter dikurangi satu.
Ini agak tumpul, tetapi setelah Anda terbiasa, ini akan efisien.
Cakupan Variabel dan Nilai Pengembalian
Untuk menghindari pencemaran namespace global di dalam suatu fungsi, deklarasikan variabel lokal menggunakan kata kunci lokal.
Anda juga dapat memanggil suatu fungsi secara eksplisit menggunakan simbol &.
Secara teknis, & hanya diperlukan jika ada ambiguitas dalam parser. Tetapi banyak pengembang yang menggunakannya karena kebiasaan untuk lebih eksplisit.
Untuk mengirim hasil kembali ke pemanggil, gunakan kata kunci return.
Masukan dan Keluaran
Membaca dari aliran input standar (STDIN ) sangatlah mudah. Operator braket sudut
Ini mengasumsikan inputnya adalah integer yang valid. Jika pengguna mengetik sampah, logikanya rusak.
Untuk input karakter tunggal, gunakan getc :
Atau gunakan fungsi read, yang menentukan panjang input yang akan diambil.
Angka 1 di akhir menyatakan bahwa hanya satu karakter yang dibaca.
Lingkungan dan Data Baris Perintah
Perl memaparkan data sistem melalui variabel global.
Hash %ENV menampung semua variabel lingkungan. Ingat, kuncinya harus dalam huruf besar.
Jika Anda perlu mengakses argumen baris perintah, lihat array @ARGV.
$ARGV[0]adalah argumen pertama.$ARGV[1]adalah yang kedua.$#ARGVmemberi Anda indeks argumen terakhir (hitungan dikurangi satu).
Hal ini memudahkan pembuatan skrip yang menerima masukan dinamis tanpa nilai hardcoding.
Apakah Perl Masih Relevan?
Itu pertanyaan yang wajar. Apakah programmer masih menggunakan Perl? Ya.
Apakah Perl masih digunakan pada tahun 2024? Ya, meski perannya sudah bergeser. Ini adalah bahasa tingkat tinggi, bertujuan umum, ditafsirkan, dan dinamis. Itu tidak mendominasi proyek web greenfield baru seperti yang mungkin dilakukan Python atau Node.js.
Namun, Perl tetap menjadi yang terdepan dalam administrasi sistem dan pemeliharaan warisan. Ini unggul dalam pemrosesan teks dan skrip cepat


































