FUNGSIONAL PROGRAMING
Merupakan salah satu pemecahan masalah dalam pemrograman
yang ditulis urut dari judul sampai alplikasi masalah yang kita buat,
1. Konsep dasar
-
Program:
model, solusi persoalan untuk dijalankan komputer
-
Solusi:
identifikas satu/beberapa fungsi, jika diaplikasikan nilai khusus hasilnya
sesuai diharapkan
-
Fungsi:
pemetaan tipe domain ke tipe range, baik tipe dasar atau bentukan
-
Ekspresi:
dasar, kondisional, rekursif
-
Tak
ada ‘aksi’ baca tulis maupun pengubahan state
-
Analisis
TopDown: problem, spesifikasi, dekomposisi\
2. Struktur program
-
Definisi:
identitas fungsi, domain, range
-
Spesifikasi:
apa yang dilakukan fungsi
-
Realisasi:
bagaimana fungsi melakukan komputasi atas parameter formal
-
Aplikasi:
pemanggilan fungsi untuk evaluasi parameter aktual
3. Kerangka program
4.
Notasi
-
Operator
aritmetika: +,-,*,/,mod,div
-
Opeartor
relasional: <,>,=,≠,≤,≥
-
Operator
logika: and,or
-
Tipe:
integer, real, character, boolean, list, list
of list, …
-
Kondisional:
if-then-else, depend on,
-
Ekspresi
antara: let
5. Ekspresi kondisional
-
Kasus:
kondisi bernilai boolean
-
Analisi
kasus: dekmposisi persoalan menjadi beberapa subpersoalan secara disjoin
-
Model:
1. depend on
2. if then else
3. and then
4. or else
1. depend on
2. if then else
3. and then
4. or else
6. Kerangka kondisional
-
depend on
<domain>
<kondisi-1> : <ekspresi-1>
<kondisi-2> : <ekspresi-2>
…
else : <ekspresi-n>
<kondisi-1> : <ekspresi-1>
<kondisi-2> : <ekspresi-2>
…
else : <ekspresi-n>
-
-
if <kondisi-1>
then
<ekspresi-1>
else {not kondisi-1}
<ekspresi-2>
<ekspresi-1>
else {not kondisi-1}
<ekspresi-2>
7. type bentukan
-
Produk,
tipe komposisi, tipe terstruktur, record
-
Tipe:
himpunan nilai dan sekumpulan operator untuk tipe tsb
-
Definisi&spesifikasi:
menentukan domain,range,operator
-
Operator:
fungsi, konstruktor, selektor, predikat
-
Notasi
tuple: <tipe,…,tipe>
8. Contoh type bentukan
-
Point
(absis,ordinat) : <integer,integer>
-
Pecahan
(pembilang,penyebut) : <integer, integer≠0>
-
Jam
: <integer[0..23], integer[0..59], integer[0..59]>
-
Garis
(awal,akhir) : <Point,Point>
9. Pendefinisian type bentukan
-
Nama,
hanya akan jadi definisi
-
Selektor:
akses komponen dasar
-
Konstruktor:
fungsi pembentuk tipe
-
Predikat:
menentukan karakteristik, pemeriksaan besaran
-
Fungsi
lain yang relevan, dibuat spek dan harus direalisasikan
Tidak ada komentar:
Posting Komentar