Advertisements

Function to return last element of a list in ML

1 May

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…

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: