Pada kesempatan kali ini, saya akan menjelaskan fungsi yang dapat kita pakai dalam fungsional programming menggunakan Meta Language atau ML. Fungsi ini berfungsi untuk mengembalikan elemen terakhir dari sebuah list. Berikut fungsinya:
fun lastElement [] = raise Empty |lastElement [x] = x |lastElement (_::xs) = lastElement xs;
Fungsi di atas adalah fungsi yang diharapkan karena akan memaksimumkan penggunaan pattern matching.
Perhatikan bahwa [x] ekuivalen dengan x::[].
Empty merupakan exception standar yang berguna untuk menandakan bahwa tidak ada elemen dalam list, yang juga digunakan oleh fungsi built-in hd dan tl. Boleh juga membuat exception sendiri.
Selain fungsi di atas, kita juga dapat membuat sebuah fungsi lain seperti di bawah ini yang memiliki fungsi yang sama, yaitu untuk mengembalikan elemen terakhir pada sebuah list:
fun lastElement [] = raise Empty |lastElement (x::xs) = if null xs then x else lastElement xs;
Perhatikan bahwa null xs ekuivalen dengan xs = [] atau xs = nil.
Okay, cukup sekian pembahasan fungsi untuk me-return atau mengembalikan last element dari sebuah list di functional programming menggunakan Meta Language atau ML. Semoga dapat membantu semuanya…
Leave a Reply