Menafsirkan program

Amati kode di gambar tutorial sebelumnya, program tersebut menunjukkan pada kita, bahwa program itu sedang membuat garis dari kordinat “0,0,0” ke kordinat “10,0,0”, dengan menggunakan variabel p1 dan p2, perintah Autocad menjalankan berdasarkan masukkan dari variabel tersebut.

Baris pertama dari gambar 2.010, adalah “ (defun c:test (/ p1 p2) ”, program Autolisp selalu didahului oleh kurung buka, kemudian diikuti fungsi lain, disini terdapat kata “ defun ”, uraian lengkap telah dibahas pada posting ini: penentu fungsi, setelah kata “ c: ” ada tulisan “ test ”, kata ini boleh diganti sesuka pembuatnya, yang penting kata untuk pemanggil program ini jangan sampai bentrok dengan kata yang terdapat pada command alias pada Autocad, lihat pada attachment ini.

Tentu saja ada beberapa program yang bentuknya agak lain, misalnya:

(defun c:test ()

Variabel yang terkandung didalamnya, dengan sengaja tidak di riset menjadi nol, dengan tujuan tertentu variabel dijadikan global variabel.

(defun c:test (/)

Kasusnya hampir sama dengan sebelumnya, hanya ada penambahan garis miring saja, tetapi kegunaannya tidak begitu berpengaruh pada program tersebut.

(defun c:test (/ p1 p2)

Dan pada baris ketiga terdapat local variable p1 dan p2, sengaja dicantumkan disitu agar variable tersebut setelah program dijalankan nilai variabel p1 dan p2 akan menjadi nol atau nil.

(defun c:test (a b c / p1 p2)

Serta yang terakhir mengandung huruf a, b dan c. telah diuraikan lebih jelas pada penentu fungsi.

Berikutnya baris (setq p1 ‘(0 0 0)), ini artinya variabel yang bernama p1 minta diset ke nilai 0,0,0 pada kordinat di area gambar, anda boleh saja menamai variabel tersebut sesuka anda, yang penting antar variabel jangan sampai terjadi duplikat nama, nanti akan membingungkan Autocad sendiri. Setq adalah singkatan dari Set to Quote, atau minta diset ke nilai tertentu untuk variabel yang bernama “anu”, persamaan tersebut bisa juga berbetuk lain, contohnya (setq p1 (list 0 0 0)), antara quote atau “ “ dan list adalah pengertiannya sama, jadi anda bisa menulis ‘(0 0 0)’ ataupun (list 0 0 0), lihat dibawah ini.

Keterangan gambar: Contoh bentuk lain menulis program

Poin “(setq p2 ‘(10 0 0))” tidak perlu dibahas karena sudah tercakup pada uraian diatas, baris berikutnya terdapat “ (command “_line” p1 p2 “”) “, ini artinya menjelaskan kepada Autocad agar dilakukan perintah pembuatan sebuah garis dari variabel p1 ke variabel p2, sedang tanda “” adalah sama dengan tekan enter. Baris berikutnya “ (princ) “ ini menjelaskan setelah program tersebut bekerja , akan keluar dengan tenang, terakhir setiap program harus ditutup oleh kurung tutup.

Autolisp adalah program bahasa computer yang paling banyak menggunakan kurung kurawal, hati-hati penggunaan kurung kurawal ini, karena semua programmer Autolisp sering menemui kekeliruan hanya pada kekurangan atau kelebihan kurung kurawal, tetapi kadang kala kesalahan sedikit membuat program menjadi tidak bisa bekerja, ataupun sulit menganalisa letak kesalahannya.