Didasarkan pada konsep matematika dari sebuah fungsi dan bahasa pemrograman
fungsional, meliputi :
- suatu set fungsi primitif
- suatu set format fungsional
- aplikasi operasi
- suatu set objek data dan fungsi asosiasi
- suatu mekanisme untuk memberikan rujukan sebuah
nama terhadap suatu fungsi
Merupakan hasil dari fungsi meringkas dan men-generalisir type data dari peta
Contoh :
LISP → - bahasa untuk komputasi simbolik, nilai direpresentasikan dengan
ekspresi simbolik.
- banyak digunakan di wilayah kecerdasan buatan (robotika, sistem
cerdas)
- biasa dieksekusi dibawah kendali interpreter
List → urutan dari atom atau list, dipisahkan dengan spasi, ditutup dengan
tanda kurung
Contoh : (PLUS A B)
((DAGING AYAM) (SAWI KANGKUNG BAYAM) AIR))
LAMBDA CALCULUS
Adalah :
• bahasa sederhana dengan ilmu semantik sederhana, ekspresif yang menyatakan
semua fungsi dapat diperhitungkan
• Merupakan suatu bentuk formal dengan fungsi sebagai aturan
Contoh :
- Dengan ekspresi polynomial X²+3X-5
- Dengan fungsi lebih dari 1 variabel
(+ x y) ditulis ((+ x) y) dimana fungsi (+ x) adlah fungsi yg menambahkan sesuatu ke x
Lambang primitif
Aplikasi fungsi
Fungsi ciptaan
Ilmu Semantik dapat dinyatakan dalam lambda calculus sebagai fungsi matematical, Eval, dari
ekspresi ke nilai
Contoh : Eval[+ 3 4]=7 menggambarkan bhw nilai ekspresi
(+ 3 4) untuk menjadi 7
Scheme
• Sebuah fungsi dapat terbuat atas fungsi yang lain dan dapat diaplikasikan pada list
atau argumen
1969, Model Matematika pertama untuk lambda-calculus bertipe bebas (Dana Scott)
Haskell
• bahasa modern yang dinamai sama dengan Haskell B. Curry
• Didesain oleh 15 orang anggota komite internasional
• Pembentukan bahasa fungsional yang memasukkan :
– ide-ide baik yang sebelumnya ada dalam riset bahasa fungsional
– Yang sesuai untuk pengajaran, riset dan aplikasi
– Fasilitas Overloading, yang dipadukan dengan sistem bertipe polimorfis, i/o
fungsional, abstraksi data dan penyembunyian informasi
PEMROGRAMAN IMPERATIF
Variabel : identifier/pengenal yang berisi data yang dapat berubah-ubah nilainya di dalam
program.
Penugasan(Assigment) :
suatu aksi yg menyebabkan peletakkan atau pemberian suatu nilai di suatu lokasi atau
variable
Merupakan : statemen yang berisi perintah untuk mengerjakan statemen tertentu yang
diidentifikasi dengan suatu label, baik menggunakan statemen GOTO
bersyarat maupun tanpa syarat.
10 LET A = 5
20 LET B = A + 1
50 PRINT B
60 END
PEMROGRAMAN TERSTRUKTUR
Merupakan : suatu teknik yg memecah masalah besar menjadi lebih kecil & lebih mudah
dipahami sehingga masalah yang besar dapat diselesaikan dengan baik.
Contoh : PASCAL, COBOL, BAHASA C
STRUKTUR KONTROL
Struktur kontrol / struktur kendali merupakan : struktur y mengendalikan
statemen/instruksi apa saja yg harus dikerjakan
2. Seleksi
Statemen penyeleksian kondisi menunjukkan bahwa suatu statemen akan dikerjakan bila
suatu kondisi
adalah bernilai benar. Contoh statemen penyeleksian kondisi : IF – THEN, CASE OF
(Bahasa Pascal)
3. Iterasi
Statemen Iterasi (perulangan) digunakan untuk memproses statemen-statemen
tertentu berulang kali.
Subprogram merupakan : blok statemen yang dapat dipanggil dari lokasi yang berbeda di
dalam program.
Eksepsi adalah :
suatu konstruksi suatu bahasa khusus untuk menangani keadaan yang tidak terduga
(biasanya adalah error); status keadaan error
Selama program berjalan, dapat terjadi sesuatu hal yang menyebabkan error.
Misalnya :
array diberi nilai index yang melebihi nilai index yang sudah dideklarasikan, atau suatu
operasi aritmatika yang membagi suatu bilangan dengan nol. Hal ini dapat mengakibatkan
program berhenti tidak seperti yang diinginkan dan biasanya menampilkan pesan kesalahan
yang tidak jelas.
#include <iostream>
using namespace std;
int main ()
{
try {
cout <<”Masukkan Angka :”;
int num; cin >> num;
if (num>10) throw std : : exception ();
cout << “Angka Kurang dari atau sama dengan 10 “ <<
endl;
} catch (std : : exception& S) {
cout << “Angka lebih dari 10 “ << endl;
}
return 0;
}