Pages

Subscribe:

Selasa, 17 April 2012

LISP


LISP merupakan bahasa yang memiliki fitur unik. Bahasa LISP menjadi media yang luar biasa untuk mempelajari bentukan-bentukan pemrograman dan struktur data serta menghubungkannya ke fitur-fitur bahasa yang mendukungnya. Fitur paling berarti adalah deskripsi proses di LISP yang disebut procedure dapat direpresentasikan dan dimanipulasi sebagai data. Pentingnya hal ini adalah bahwa teknik-teknik perancangan program yang ampuh yang bergantung pada pengaburan antara data “pasif” dan proses “aktif”.
Fleksibilitas LISP dalam menangani prosedur sebagai data membuatnya menjadi bahasa yang cocok untuk eksplorasi teknik-teknik pengaburan.
Kemampuan merepresentasi prosedur sebagai data juga membuat LISP merupakan bahasa luar biasa untuk menulis program yang harus memanipulasi program lain sebagai data seperti interpreter atau kompilator yang mendukung bahasa pemrograman.

LISP (LISt Processing) dispesifikasikan John McCarthy pada tahun 1950. Mulanya LISP dimaksudkan sebagai model komputasi alternatif berdasarkan teori fungsi/persamaan rekursif. Bahasa McCarthy berdasarkan makalahnya: "Recursive functions of symbolic expressions and their computation by machine".

Tujuan McCarthy adalah sebagai berikut: 
-Menciptakan bahasa untuk komputasi simbolik bukan numerik 
-Implementasi model komputasi berdasarkan teori fungsi rekursif
-Menyediakan definisi sintaks dan simantiks bahasa yang bersih 
-Mendemonstrasikan secara formal kelengkapan model komputasi ini 

Selain sebagai formulisasi matematika, LISP merupakan bahasa pemrograman yang praktis. LISP sesuai namanya LISt Processing dirancang untuk menyediakan kemampuan manipulasi simbol untuk menangani masalah pemrograman yang melibatkan banyak manipulasi simbolik. 

Pada LISP, list adalah basis program dan struktur data. LISP menyediakan fungsi-fungsi penanganan list yang diimplementasikan secara internal sebagai struktur pointer berkait. Program dapat menggunakan keampuhan dan generalitas penuh struktur berkait dengan bebas dari tanggung jawab mengelola pointer dan operasi-operasi pointer secara eksplisit.

Mulanya LISP adalah bahasa yang sangat kecil dan sederhana, yaitu:
-Fungsi untuk membentuk dan mengakses list
-Mendeteksi kesamaan
-Evaluasi ekspresi
-Kendali program: Rekursi dan kondisi tunggal

Selain itu, adanya penambahan pada LISP yaitu:
-Fungsi untuk penstrukturan data
-Kendali program
-Aritmatika real dan integer
-I/O
-Penyuntingan fungsi LISP
-Penelusuran eksekusi program

LISP berkembang menjadi lingkungan yang kaya, ampuh dan praktis untuk membangun sistem perangkat lunak besar. Pada tahun 1933, DARPA mengusulkan standarisasi disebut common LISP.


Tidak ada komentar:

Posting Komentar