Handout TIF202 Ch 2 Perancangan Bahasa Pemrograman

10/28/2015

Bab 3: Konsep Bahasa dan Otomata

Teori Komputasi

Agenda.

• Sumber Perancangan
• Tujuan Perancangan
• Detail Perancangan

Fakultas Teknologi dan Desain
1-1 Informatika
Program Studi Teknik

Konsep Bahasa dan Otomata |

Sumber Perancangan
Sumber dari bahasa pemrograman compiler adalah:
1. Bahasa Alami (Natural Language).

Karena konstruksi dari bahasa alami memiliki kelebihan:

2

Sumber Perancangan
Pertimbangnnya:

• Familiar; dan
• memiliki beberapa fasilitas yang dapat digunakan untuk
memudahkan proses pembacaan (readibility) dan pemeriksaan
kesalahan.

1. memberikan kejelasan dan kemudahan dalam pembacaan;
2. mengerjakan ‘mirip’ dengan arti instruksi; dan
3. memberikan kenyamanan untuk para pemrogram.

2. Matematika.
3. Bahasa pemrograman yang sudah ada
Konsep Bahasa dan Otomata |


3

Konsep Bahasa dan Otomata |

4

1

10/28/2015

Tujuan Perancangan
• Komunikasi dengan manusia.

Tujuan Perancangan
• Evektifitas pemrograman.

Program yang ditulis seharusnya tidak bermakna ganda (ambigu).

Bahasa pemrograman harus memberikan kemudahan dalam
penggunaan sebuah statement yang diinginkan oleh pemrogram.


• Pencegahan dan deteksi kesalahan.

• Compilability.

Sebuah bahasa pemrograman yang baik perlu mengidentifikasi
kesalahan (error ) yang mungkin terjadi sehingga mempermudah
deteksi kesalahan dan menghilangkannya.

Sebuah compiler yang baik harus memiliki tingkat kompleksitas
rendah sehingga penggunaan sebuah karakter dalam pemrograman
tidak digunakan berulang kali untuk hal yang berbeda. Contoh
penggunaan tanda koma (,), pharenthesis (kurung buka/tutup), dan
kurung siku buka/tutup.

• Usability.
Bahasa pemrograman hasur mudah dipelajari dan diingat

Konsep Bahasa dan Otomata |


5

Konsep Bahasa dan Otomata |

Tujuan Perancangan
• Efisiensi.

6

Tujuan Perancangan
• Machine Independent.

Terdapat 3 alasan mengapa efisiensi penting dalam pengembangan
sebuah compiler :

Sebuah bahasa dikatakan machine independent jika dan hanya jika
sebuah program yang telah sukses dikompilasi dan dieksekusi pada
senuah mesin, ketika dipindahkan ke mesin lainnya akan berjalan
dengan input dan output yang sama.


1. Seharusnya user tidak dikorbankan untuk membayar peningkatan kinerja
perangkat keras; dan

2. kecepatan dan harga dari peripheral tidak berbanding lurus
dengan meningkatnya kecepatan CPU.
3. Bagaimanapun cepat dan murahnya perangkat keras tidak akan
sebanding dengan cepat dan murahnya jika menjalankan sebuah
program yang efisien

Konsep Bahasa dan Otomata |

• Kesederhanaan (Simplicity).
Semakin sederhananya sebuah bahasa pemrograman tidak membuat
bahasa pemrograman tersebut menjadi lebih baik. Karena sebuah
kesederhaan bahasa pemrograman dapat berarti hilangnya beberapa
fasilitas pemrograman sehingga tidak dapat digunakan secara
maksimal.
7

Konsep Bahasa dan Otomata |


8

2

10/28/2015

Tujuan Perancangan
• Keseragaman (Uniformity).

Detail Perancangan
1. Microstructure.

Didefinisikan sebagai mengulang pekerjaan yang sama dengan cara
yang sama. Dalam prinsip bahasa pemrograman uniformity dapat
mengurangi hal-hal yang harus diingat pemrogram.

Prinsip dasar dari microstructure adalah arti dari suatu
konstruksi. Bentuk microstructure adalah sebagai berikut:
1. Operator

2. Set Karakter (ASCII 7-bit)
3. Keyword sebagai “reserved word”
4. Simbol Komentar (contoh: (* *), //,:=)

• Orthogonality.
Setiap fungsi bekerja tanpa perlu mengetahui struktur dari yang lain.

• Generalisasi.
Melakukan suatu hal yang berbeda dengan menggunakan cara yang
serupa.
Konsep Bahasa dan Otomata |

9

Konsep Bahasa dan Otomata |

Detail Perancangan
2. Struktur Ekspresi.
Metode yang digunakan untuk menentukan urutan evaluasi:
1. Explisit Bracketing:

Menggunakan karakter seperti (, ), [, ].

10

Detail Perancangan
2. Tipe Data: sederhana, gabungan, dan kompleks.
3. Strategi Alokasi Penyimpanan: static, lokal, dinamik, otomatis,
retention.
4. Lingkup variabel.

4. Struktur kendali.

2. Operator Binding

1.
2.
3.
4.
5.


3. Struktur Data.
Terdapat 4 aspek dalam penggunaan struktur data:
1. Deklarasi data: konstanta, type, dan variabel.
Konsep Bahasa dan Otomata |

11

IF statement
CASE OF statement
FOR...DO
REPEAT...UNTIL
WHILE...DO
Konsep Bahasa dan Otomata |

12

3

10/28/2015


Detail Perancangan

Teori Komputasi

5. Struktur kompilasi.
6. Struktur input output (I/O)
1.
2.
3.
4.
5.

Format-free
Formatted
Sequential
Index
Direct

Konsep Bahasa dan Otomata |


13

1-14

4