Penyeleksian kondisi di perl dapat menggunakan syntax if…else dengan format
if ( kondisi ) {
....
} else {
....
}
Contoh
#!/usr/bin/perl
use strict;
use warnings;
use feature 'say';
my $username = "user";
if ( $username eq "nama" ) {
say "Oke";
} else {
say "Ulangi lagi....";
}
Operator perbandingan digunakan untuk membandingkan nilai. Data/nilai yang dibandingkan dapat berupa bilangan ataupun string. Namun ada perbedaan notasi.
Perbandingan bilangan
|Contoh penulisan |Penjelasan |
|$a < $b | $a lebih kecil dari $b |
|$a > $b | $a lebih besar dari $b |
|$a <= $b | $a lebih kecil atau sama dengan $b |
|$a => $b | $a lebih besar atau sama dengan $b |
|$a == $b | $a sama dengan $b |
|$a != $b | $a tidak sama dengan $b |
Pada perl, variabel scalar yang berupa string dapat dilakukan penggabungan dan pengulangan. Contoh, terdapat 3 variabel sebagai berikut:
$sapa = “Hai…. "
$distro = “Slackware”
$penilaian = “distro terbaik.”
Ketiga variabel tersebut akan digabungkan. Kemudian di baris selanjutnya,penampilan variabel $distro akan diulang 5x. Untuk penggabungan digunakan “.”, sedangkan pengulangan dengan “x”.
#!/usr/bin/perl
use strict;
use warnings;
use feature "say";
my $sapa = "Hai.... ";
my $distro = "Slackware ";
my $penilaian = "distro terbaik.";
# penggabungan
say($sapa.$distro.$penilaian);
# pengulangan
say("$distro" x 5);
Penggabungan operator yang dimaksudkan di sini adalah menggabungkan = dan operator lainnya seperti penjumlahan, perkalian, pengurangan, dll. Penggabungan ini biasanya digunakan untuk memperbarui nilai suatu variabel. Contoh di sini adalah penggabungan dengan operator penjumlahan.
Misalkan, terdapat variabel a dengan nilai awal 10. Nilai a kemudian akan diubah dengan cara ditambah 4. Nilai a yang baru ini dituliskan dengan
Sehingga nilai a kemudian berubah dari 10 menjadi 14.
#!/usr/bin/perl
use strict;
use warnings;
use feature "say";
my $a = 10;
say("Nilai a awal. a = 10");
$a += 4;
say("Nilai a baru setelah ditambah 4. a += 4. a = $a");
Variabel scalar merupakan variabel tunggal dalam perl. Pada variabel ini bisa dilakukan beberapa operasi aritmatika seperti penjumlahan, pengurangan, perkalian, pembagian, modulus, pemangkatan, autoincrement, autodecrement.
Pada operasi aritnatika, dikenal bilangan bertipe integer dan float. Integer adalah bilangan bulat. Float bilangan desimal.
#!/usr/bin/perl
use strict;
use warnings;
use feature 'say';
my $a = 2;
my $b = 25;
say("Angka pertama (a) adalah $a");
say("Angka kedua (b) adalah $b");
# penjumlahan
my $c = $a + $b;
say("a+b = $c");
# pengurangan
my $d = $b - $a;
say("b-a = $d");
# perkalian
my $e = $a * $b;
say("a*b = $e");
# pembagian
my $f = $a / $b;
my $g = $b / $a;
say("a/b = $f");
say("b/a = $g");
# pemangkatan
my $h = $a ** $b;
my $i = $b ** $a;
say("a^b = $h");
say("b^a = $i");
# autoincrement
# tanda + di depan
say("Nilai a sebelum autoincrement = $a");
my $j = ++$a;
say("++a = $j");
say("Nilai a sesudah autoincrement = $a");
# tanda + di belakang
say("Nilai b sebelum autoincrement $b");
my $k = $b++;
say("$b++ = $k");
say("Nilai b setelah autoincrement $b");
# autodecrement
# tanda - di depan
say("c = a+b. c sebelum autodecrement = $c");
my $l = --$c;
say("l = c setelah autodecrement = $l");
# tanda - di belakang
my $m = $c--;
say("c setelah autodecrement = $m");
# modulus (sisa hasil bagi)
my $a = 3;
my $b = 30;
my $n = $a % $b;
my $o = $b % $a;
say("a = $a");
say("b = $b");
say("a%b = $n");
say("b%a = $o");
Array merupakan variabel pada perl dengan data yang nilainya majemuk. Sedangkan scalar bernilai tunggal. Catatan kali ini tentang bagaimana cara membuat array dari scalar yang tersedia.
my $nama = "Sasongko";
my $jenis_kelamin = "Laki-laki";
my $distro = "Slackware";
my $tahun = 2021;
Keempat scalar tersebut akan disatukan menjadi array @biodata.
my @biodata = ($nama, $jenis_kelamin, $distro, $tahun);
Untuk mengetahui semua modul perl yang terinstall bisa menggunakan instmodsh.
$ instmodsh
Available commands are:
l - List all installed modules
m <module> - Select a module
q - Quit the program
cmd?
Kemudian pilih l.
Array adalah salah satu tipe data pada bahasa pemrograman perl. Tipe data ini berisi data majemuk. Penulisan array menggunakan notasi @.
Contoh:
my @buah = ("pepaya", "manga", "pisang", "jambu", "durian", "apel");
Untuk mengetahui berapa banyaknya elemen dari array, bisa menggunakan scalar().
Jenis variabel ketiga yang dimiliki perl adalah hash. Hash ini merupakan data berpasangan. Penulisan dengan menyertakan tanda %.
Contoh: akan dideklarasikan data tentang saya, yaitu nama dan distro yang saya gunakan. Nama saya Sasongko, distro Slackware.
my %data = (
nama => "Sasongko",
distro => "Slackware",
);
Melanjutkan catatan sebelumnya tentang variabel yang dimiliki bahasa pemrograman perl. Sebelumnya membahas tentang variabel scalar. Catatan kali ini tentang jenis variabel yang kedua yaitu array.
Berbeda dengan scalar yang bernilai tunggal, array bernilai majemuk. Array merupakan himpunan. Element array zero indexed, artinya, elemen pertama berindeks 0.
Pendeklarasian array diserta simbol @.
Contoh: himpunan nama-nama buah dan daftar nilai
my @buah = ("pisang", "mangga", "jeruk", "pepaya");
my @daftar_nilai = (80, 100, 76.5, 21.87);
menghasilkan output pisang. Sedangkan
Perl memiliki 3 jenis variabel, yaitu scalar, array dan hash. Scalar adalah variabel dengan nilai tunggal. Penulisan scalar diawali dengan tanda $.Pendeklarasian variabel dengan my. Nilai dari scalar bisa berupa text/string ataupun angka.
Contoh: akan dideklarasikan variabel buah. buah ini bernilai “mangga”.
Salah satu keunggulan perl dibanding bahasa pemrograman lainnya adalah tersedia dokumentasi atau panduan bagi pemula. Pemula membutuhkan panduan singkat tapi tetap komprehensif dan mudah dipahami. Perl sudah memberikannya. Dokumentasi atau panduan ini bisa diakses secara offline setelah menginstall perl. Namanya adalah perlintro.
Reputasi vim sebagai text editor sudah teruji berpuluh tahun. Ternyata Vim juga memiliki support plugin untuk perl. Hal ini membuat vim bisa dijadikan sebagai integrated development environment (IDE) untuk perl.
Download plugin-nya kemudian extract
$ wget https://www.vim.org/scripts/download_script.php?src_id=24473 -O perl-support.zip -O perl-support.zip
$ mkdir -p .vim
$ unzip perl-support.zip -d .vim
Aktifkan
$ echo "filetype plugin on" >> .vimrc
Siang ini, sudah agak lama tidak check update paket-paket dari SBo. Sudah 3 - 5 mingguan lah kira-kira. Kebetulan juga hari ini tadi agak longgar.
$ sbocheck # command ini dijalankan oleh root
Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.32), passed through in regex; marked by <-- HERE in m/\$({ <-- HERE |)[A-Za-z0-9_]+(}|)/ at /usr/share/perl5/SBO/Lib/Build.pm line 244
Ada masalah ternyata dan masalahnya di Perl. Simpel sih solusinya. Buka file /usr/share/perl5/SBO/Lib/Build.pm, pada line 244 karakter { diganti {
Shebang itu apa?
Pengguna linux, BSD, ataupun mac yang terbiasa melihat source code sangat mungkin sudah tidak asing lagi dengan shebang. Ada yang menyebut shebang sebagai sh bang, shabang, hashbang, hashpling, dan poundbang. Shebang ini dituliskan di baris pertama, yakni diawali dengan #!.
Contoh, untuk perl :
#!/usr/bin/perl
atau
#!/usr/bin/env perl
Sebagai pengguna linux khususnya Slackware, user akan merasakan betapa pentingnya shebang ini. Kepentingannya terkait fungsi shebang itu sendiri dan bagaimana user menjalankannya.
Cara uninstall semua modul perl yang dulunya install dari CPAN secara manual :
rm -r /usr/local/{lib{,64},share}/perl5
Padre merupakan integrated development environment (IDE) untuk bahasa pemrograman perl.
Padre ini belum dimasukkan ke dalam paket resmi Slackware maupun SBo. Sehingga ada 2 kemungkinan cara menginstallnya.
-
Build sendiri dari source
-
Install dari cpan
Cara yang saya gunakan adalah cara kedua, yaitu