Sejarah Bahasa Pemrograman
Sejak
pertama komputer difference engine diciptakan oleh Charles Babbage pada tahun
1822, komputer membutuhkan sejumlah instruksi untuk melakukan suatu tugas
tertentu. Instruksi-instruksi ini dikenal sebagai bahasa pemrograman. Bahasa
komputer mulanya terdiri dari sejumlah langkah pengkabelan untuk membuat suatu
program; hal ini dapat dipahami sebagai suatu rangkaian pengetikan kedalam
komputer dan kemudian dijalankan.
Pada
awalnya, difference engine-nya Charles Babbage hanya dibuat untuk menjalankan
tugas dengan menggunakan perpindahan gigi roda untuk menjalankan fungsi
kalkukasi. Jadi, bentuk awal dari bahasa komputer adalah berupa gerakan secara
mekanik, selanjutnya gerakan mekanik tersebut digantikan dengan sinyal listrik
ketika pemerintah AS mengembangkan ENIAC pada tahun 1942, tetapi masih banyak
mengadopsi prinsip-prinsip dasar dari Babbage’s engine yang mana diprogram
dengan mengeset switch dan perkabelan pada seluruh sistem pada setiap “program”
maupun kalkulasi. Tentu saja ini merupakan pekerjaan yang membosankan.
Pada
1945, John Von Neumann yang bekerja pada Institute for Advanced Study
mengemukakan dua konsep yang secara langsung mempengaruhi masa depan dari
bahasa pemrograman komputer. Yang pertama dikenal sebagai “shared-program
technique” . Pada
teknik ini dinyatakan bahwa hardware komputer haruslah sederhana dan tidak
perlu dilakukan pengkabelan dengan menggunakan tangan untuk setiap program.
Sebagai gantinya, instruksi-instruksi yang lebih kompleks harus digunakan untuk
mengendalikan perangkat keras yang lebih sederhana, hal ini memungkinkan
komputer diprogram ulang dengan cepat.
Konsep
yang kedua yang juga sangat penting untuk pengembangan bahasa pemrograman. Von Neumann
menyebutnya sebagai “conditional control transfer” . Ide ini berkembang menjadi bentuk
subrutin, atau blok kode yang kecil yang dapat panggil berdasarkan aturan
tertentu, dari pada suatu himpunan tunggal urutan kronologis yang harus
dijalankan oleh komputer. Bagian kedua dari ide tersebut menyatakan bahwa kode
komputer harus dapat bercabang berdasarkan pernyataan logika seperti IF
(ekspresi) THEN, dan perulangan seperti FOR statement. “Conditional control
transfer” mengembangkan ide adanya “libraries,” yang mana merupakan blok kode
yang dapat digunakan berulang kali.
Pada
1949, setelah beberapa tahun Von Neumann bekerja, bahasa Short Code dilahirkan
(www.byte.com), yang merupakan bahasa komputer yang pertama untuk peralatan
elektronik yang membutuhkan programmer untuk mengubah perintah kedalam 0 dan 1
dengan tangan.
Pada
1957, bahasa khusus yang pertama muncul dalam bentuk FORTRAN yang merupakan
singkatan dari sistem FORmula TRANslating. Bahasa ini dirancang pada IBM untuk
perhitungan scientific. Komponen-komponennya sangat sederhana, dan menyediakan
bagi programmer akses tingkat rendah kedalam komputer. Sampai saat ini, bahasa
ini terbatas pada hanya terdiri dari perintah IF, DO, dan GOTO, tetapi pada
waktu itu, perintah-perintah ini merupakan lompatan besar kearah depan. Type
data dasar yang digunakan sampai sekarang ini dimulai dari FORTRAN, hal ini
meliputi variabel logika (TRUE atau FALSE), dan bilangan integer, real, serta
double-precision.
FORTRAN
sangat baik dalam menangani angka-angka, tetapi tidak terlalu baik untuk
menangani proses input dan output, yang mana merupakan hal yang penting pada
komputasi bisnis. Komputasi bisnis mulai tinggal landas pada 1959, dengan
dikembangkannya COBOL, yang dirancang dari awal sebagai bahasa untuk para
pebisnis. Type data yang ada hanya berupa number dan text string. Hal tersebut
juga memungkinkan pengelompokan menjadi array dan record, sehingga data di
telusuri dan diorganisasikan dengan lebih baik. Sesuatu hal yang menarik untuk
dicatat bahwa suatu program COBOL dibuat menyerupai suatu essay, dengan empat
atau lima bagian utama yang membentuk keseluruhan yang tertata dengan baik.
Perintah-perintah COBOL sangat menyerupai tata bahasa English, sehingga
membuatnya agak mudah dipelajari. Semua ciri-ciri ini dikembangkan agar mudah
dipelajari dan mudah diterapkan pada dunia bisnis.
Pada
1958, John McCarthy di MIT membuat bahasa LISt Processing (atau LISP), yang
dirancang untuk riset Artificial Intelligence (AI). Karena dirancang untuk
fungsi spesialisasi yang tinggi, maka tata cara penulisannya jaring kelihatan
sebelum ataupun sesudahnya. Sesuatu perbedaan yang paling nyata dari bahasa ini
dengan bahasa lain adalah dasar dan type satu-satunya adalah list, yang
ditandai dengan suatu urutan item yang dicakup dengan tanda kurung. Program
LISP sendirinya dibuat sebagai suatu himpunan dari list, sehingga LISP memiliki
kemampuan yang khusus untuk memodifikasi dirinya, dan juga dapat berkembang
sendiri. Tata cara penulisan LISP dikenal sebagai “Cambridge Polish,”
sebagaimana dia sangat berbeda dari logika Boolean (Wexelblat, 177) :
x V y – Cambridge Polish,
what was used to describe the LISP programOR(x,y) – parenthesized prefix notation, what was used in the LISP program
x OR y – standard Boolean logic
LISP masih digunakan sampai sekarang karena spesialiasi yang tinggi dari sifat abstraknya.
Bahasa
Algol dibuat oleh suatu komite untuk pemakaian scientific pada tahun 1958.
Kontribusi utamanya adalah merupakan akar dari tiga bahasa selanjutnya yaitu
Pascal, C, C++, dan Java. Dia juga merupakan bahasa pertama dengan suatu tata
bahasa formal, yang dikenal sebagai Backus-Naar Form atau BNF (McGraw-Hill
Encyclopedia of Science and Technology, 454). Pada Algol telah diterapkan
konsep-konsep baru, seperti rekursif pada function, bahasa berikutnya Algol 68,
menjadi bahasa yang membosankan dan sulit digunakan (www.byte.com). Hal ini
mengarah kepada adopsi terhadap bahasa yang lebih kecil dan kompak seperti
Pascal.
Pascal
dimulai pada tahun 1968 oleh Niklaus Wirth. Tujuan pengembangannya adalah untuk
kebutuhan pengajaran. Pada awalnya bahasa ini dikembangkan bukan dengan harapan
adopsi pemakaian secara luas. Prinsipnya mereka mengembangkannya untuk alat
pengajaran pemrograman yang baik seperti kemampuan debug dan perbaikan sistem
dan dukungan kepada mikroprosesor komputer yang digunakan pada institusi
pendidikan.
Pascal
dirancang dengan pendekatan yang sangat teratur (terstruktur), dia
mengkombinasikan kemampuan yang terbaik dari bahasa-bahasa saat itu, COBOL,
FORTRAN, dan ALGOL. Dalam pengerjaannya banyak perintah-perintah yang tidak
teratur dan aneh dihilangkan, sehingga sangat menarik bagi pemakai (Bergin,
100-101). Kombinasi dari kemampuan input/output dan kemampuan matematika yang
solid, membuatnya menjadi bahasa yang sukses besar. Pascal juga mengembangkan
tipe data “pointer”, suatu fasilitas yang sangat bermanfaat pada bahasa yang
mengimplementasikannya. Dia juga menambahkan perintah CASE, yang mana
memperbolehkan perintah bercabang seperti suatu pohon pada suatu aturan:
CASE expression OFpossible-expression-value-1:
statements to execute…
possible-expression-value-2:
statements to execute…
END
Pascal
juga mengembangkan variabel dinamis, dimana variabel dapat dibuat ketika suatu
program sedang berjalan, melalui perintah NEW dan DISPOSE. Tetapi Pascal tidak
mengimplementasikan suatu array dinamis, atau kelompok dari variabel-variabel,
yang mana sangat dibutuhkan, dan merupakan salah satu penyebab kekalahannya
(Bergin, 101-102). Wirth kemudian membuat lanjutan dari Pascal, Modula-2,
tetapi pada saat itu muncul C yang dengan cepat menjadi mengeser posisi Pascal.
C
dikembangkan pada tahun 1972 oleh Dennis Richie ketika sedang bekerja pada Bell
Labs di New Jersey. Transisi pemakaian dari bahasa umum yang pertama ke bahasa
umum sampai hari ini yaitu transisi antara Pascal dan C, C merupakan
perkembangan dari B dan BCPL, tetapi agak menyerupai Pascal. Semua fasilitas di
Pascal, termasuk perintah CASE tersedia di C. C menggunakan pointer secara luas
dan dibangun untuk kecepatan dengan kelemahannya yaitu menjadi sulit untuk
dibaca. Tetapi karena dia menghilangkan semua kelemahan yang terdapat di
Pascal, sehingga dengan cepat mengambil alih posisi Pascal.
Ritchie
mengembangan C untuk sistem Unix yang baru pada saat yang bersamaan. Oleh
karena ini, C dan Unix saling berkaitan. Unix memberikan C beberapa fasilitas
besar seperti variabel dinamis, multitasking, penanganan interrupt, forking,
dan strong low-level,input-output. Oleh karena itu, C sangat sering digunakan
untuk pemrograman sistem operasi seperti Unix, Windows, MacOS, dan Linux.
Pada
akhir tahun 1970 dan awal 1980, suatu metode pemrograman yang baru telah
dikembangkan. Ha tersebut dikenal sebagai Object Oriented Programming, atau
OOP. Object merupakan suatu potongan dari data yang dapat dipaket dan
dimanipulasi oleh programmer. Bjarne Stroustroup menyukai metode ini dan
mengembangkan lanjutan dari C yang dikenal sebagai “C With Classes.” Kemampuan
lanjutan ini dikembangkan menjadi bahasa C++ yang diluncurkan pada tahun 1983.
C++
dirancang untuk mengorganisasikan kemampuan dasar dari C dengan OOP, dengan
tetap mempertahankan kecepatan dari C dan dapat dijalankan pada komputer yang
tipe berlainan. C++ sering kali digunakan dalam simulasi, seperti game. C++
menyediakan cara yang baik untuk memanipulasi ratusan instance dari manusia
didalan elevator, atau pasukan yang diisi dengan tipe prajurit yang berbeda.
Bahasa ini menjadi pilihan pada mata kuliah AP Computer Science sampai hari
ini.
Pada
awal 1990′s, interaktif TV adalah teknologi masa depan. Sun Microsystems
memutuskan bahwa interaktif TV membutuhkan suatu hal yang khusus, yaitu bahasa
portable (bahasa yang dapat berjalan pada banyak jenis mesin yang berbeda).
Bahasa ini dikenal sebagai Java. Pada tahun 1994, team proyek Java mengubah
fokus mereka ke web, yang mana berubah menjadi sesuatu yang menjanjikan setelah
interactive TV gagal. Pada tahun berikutnya, Netscape menyetujui pemakaian Java
pada internet browser mereka, Navigator. Sampai titik ini, Java menjadi bahasa
masa depan dan beberapa perusahaan mengumumkan aplikasi harus ditulis dalam
Java.
Java
mempunyai tujuan yang besar dan merupakan bahasa yang baik menurut buku text,
pada kenyataanya “bahasa tersebut tidak”. Dia memiliki masalah yang serius dalam
optimasi, dengan arti program yang ditulis dengannya berjalan dengan lambat.
Dan Sun telah membuat cacat penerimaan terhadap Java dengan pertikaian politis
dengan Microsoft. Tetapi Java telah dinyatakan sebagai bahasa untuk instruksi
masa depan dan benar-benar menerapkan object-oriented dan teknik tingkat tinggi
seperti kode yang portable dan garbage collection.
Visual
Basic sering diajari sebagai bahasa pemrograman dasar yang mengacu pada bahasa
BASIC yang dikembangkan pada tahun 1964 oleh John Kemeny dan Thomas Kurtz.
BASIC adalah bahasa yang sangat terbatas dan dirancang untuk orang yang bukan
computer science. Perintah-perintah dijalankan secara berurutan, tetapi kendali
program dapat berubah berdasarkan IF..THEN, dan GOSUB yang mana menjalankan suatu
blok kode dan kembali ketitik semula didalam alur program.
Microsoft
telah mengembangkan BASIC ke dalam produk Visual Basic (VB). Jantung dari VB
adalah form, atau suatu window kosos dimana anda dapat drag dan drop komponen
seperti menu, gambarm dan slider bars. Item-item ini dikenal sebagai “widgets.”
Widget memiliki properti (seperti warna) dan events (seperti klik dan double
klik) dan menjadi pusat dari pengembangan antarmuka dengan pemakai diberbagai
bahasa program dewasa ini. VB merupakan program yang banyak digunakan untuk
membuat interface sederhana ke produk Microsoft lainnya seperti Excel dan
Access tanpa membaca banyak kode, dengannya dapat dimungkinkan untuk dibuat
aplikasi yang lengkap.
Perl
telah sering digambarkan sebagai “duct tape of the Internet,” karena sering
digunakan sebagai engine untuk interface web atau pada script untuk
memodifikasi file konfigurasi. Dia memiliki fungsi text matching yang sangat
baik sehingga membuatnya menjadi hal yang ideal untuk pekerjaan tersebut. Perl
dikembangkan oleh Larry Wall pada 1987 karena fasilitas pada sed dan awk pada
Unix (digunakan untuk manipulasi text) tidak mencukupi kebutuhannya. Tergantung
kepada siapa anda bertanya, Perl adalah singkatan dari Practical Extraction and
Reporting Language atau Pathologically Eclectic Rubbish Lister.
Bahasa
pemrograman telah berkembangan dari masa kemasa dan tetap dikembangkan dimasa
depan. Mereka dimulai dari suatu daftar langkap pengkabelan agar komputer
menjalankan tugas tertentu. Langkah-langkah ini berkembang menjadi software dan
memiliki kemampuan yang lebih baik. Bahasa umum yang pertama menekankan pada
kesederhanaan dan untuk satu tujuan saja, sedangkan bahasa dewasa ini terbagi
atas bagaimana mereka diprogram, sehingga mereka dapat digunakan untuk semua tujuan.
Dan mungkin bahasa yang akan datang lebih natural dengan penemuan pada quantum
dan komputer-komputer biologis.
PROGRAM
adalah deretan instruksi yang digunakan untuk mengendalikan komputer.
Program dibuat menggunakan Bahasa Pemrograman.
Bahasa Pemrograman (programming language)
kosa kata atau aturan-aturan gramatik untuk memberikan perintah kepada komputer untuk melaksanakan suatu tugas.
Kumpulan aturan ini disebut syntax.
Program dibuat menggunakan Bahasa Pemrograman.
Bahasa Pemrograman (programming language)
kosa kata atau aturan-aturan gramatik untuk memberikan perintah kepada komputer untuk melaksanakan suatu tugas.
Kumpulan aturan ini disebut syntax.
Istilah
bahasa pemrograman biasanya mengacu kepada bahasa tingkat-tinggi, seperti
BASIC, C, C++, COBOL, FORTRAN, Ada, dan Pascal
Klasifikasi Bahasa Pemrograman
1.Generasi PertamaKlasifikasi Bahasa Pemrograman
Bahasa yang berorientasi pada mesin. Program disusun menggunakan bahasa mesin/kode mesin.
Bahasa Mesin adalah bahasa tingkat rendah yang hanya dipahami oleh komputer.
Bahasa mesin ini sangat sulit dipahami oleh orang awam sehingga programmer harus menguasai operasi komputer secara teknis.
Abstraksi bahasa ini adalah kumpulan kombinasi kode biner “0″ dan “1″ yang sangat tidak alamiah bagi kebanyakan orang – kecuali insinyur pembuat mesin komputer. Karena tidak alamiah bagi kebanyakan orang, bahasa mesin juga disebut bahasa tingkat rendah.
2. Generasi Kedua
Bahasa pemrograman yang menggunakan bahasa rakitan / Assembly.
Bahasa Assembly adalah bahasa pemrograman yang menggunakan instruksi yang sama seperti pada bahasa mesin, tetapi instruksi dan variable yang digunakan mempunyai nama sehingga mempermudah proses pemrograman.
Karena tidak lagi menggunakan deretan kode biner untuk melakukan pemrograman.
3. Generasi Ketiga
Bahasa pemrograman yang menggunakan pendekatan prosedural.
Instruksi program ditulis menggunakan kata-kata yang biasa digunakan oleh manusia. Contoh : WRITE (untuk menampilkan kelayar)
READ (untuk membaca data masukan dari keyboard).
Bahasa pada generasi ini disebut juga Bahasa beraras tinggi / High Level Language.
Contoh bahasa pemrogaman P ASCAL, FORTRAN, C, COBOL, BASIC dll.
Pada generasi bahasa pemrograman terakhir sekarang ini, kedua cara interpretasi dan kompilasi digabungkan dalam satu lingkungan pengembangan terpadu (IDE = integrated development environment).
Cara interpretasi memudahkan dalam pembuatan program secara interaktif dan cara kompilasi menjadikan eksekusi program lebih cepat.
Pertama program dikembangkan interaktif, kemudian setelah tidak ada kesalahan keseluruhan program dikompilasi. Contoh bahasa program seperti ini adalah Visual BASIC yang berbasis BASIC dan Delphi yang berbasis PASCAL.
Bahasa tingkat tinggi bersifat portable. Program yang dibuat menggunakan bahasa tingkat tinggi pada suatu mesin komputer bersistem operasi tertentu, hampir 100% bisa digunakan pada berbagai mesin dengan aneka sistem operasi. Kalaupun ada perbaikan sifatnya kecil sekali.
4. Generasi keempat
Merupakan Bahasa Non-Prosedural.
Bahasa pemrograman Generasi Ke-4 dirancang untuk mengurangi waktu pemrogram untuk membuat program sehingga pembuatan program dibuat dengan waktu lebih cepat.
Program ini dapat digunakan oleh pemakai yang kurang mengenal hal-hal teknis pemrograman tanpa perlu bantuan seorang programmer professional.
Contoh : Membuat program database sederhana dengan Microsoft Access.
Bahasa generasi ke-4 disebut juga dengan Very High Level Language atau Problem Oriented Language (bahasa yang berorientasi pada masalah) karena memungkinkan pemakai menyelesaikan masalah dengan sedikit penulisan kode pemrograman dibandingkan dengan bahasa prosedural.
Fasilitas yang tersedia :
*Program Generator (untuk membuat aplikasi mudah).
*Report Generator (untuk membuat laporan dengan mudah dan cepat)
*Bahasa Query (SQL).
Dengan adanya fasilitas ini programmer sedikit dalam menuliskan kode instruksi.
Contoh Bahasa Generasi ke-4: Oracle, Microsoft Access dsb.
5. Generasi Ke Lima
Merupakan bahasa pemrograman yang ditujukan untuk menangani kecerdasan buatan (artificial intelligence) (AI).
AI adalah disiplin dari ilmu komputer yang mempelajari cara komputer meniru kecerdasan manusia.
Contoh Aplikasi :
*Pemrosesan Bahasa Alami è mengatur komputer agar bisa berkomunikasi dengan manusia melalui bahasa manusia.
*Aplikasi Sistem Pakar è program komputer yang dapat menghasilkan pemikiran yang setara dengan seorang pakar.
Contoh Bahasa Pemrograman : PROLOG dan LISP.
Tingkatan Bahasa Pemrograman
1. Bahasa Tingkat Rendah (Low Level Language)
Bahasa yang menggunakan bahasa mendekati bahasa mesin
Contoh : bahasa Assembly
2. Bahasa Tingkat Menengah (Middle Level Language)
Bahasa pemrograman yang menggunakan aturan-aturan (sintax) dalam penulisan pernyataannya yang mudah dipahami dan memiliki instruksi/sintax tertentu yang dapat langsung diakses oleh komputer.
Contoh : Bahasa C
3. Bahasa Tingkat Tinggi (High Level Language)
Bahasa pemrograman yang penulisan pernyataannya (sintax) mudah dipahami secara langsung oleh manusia. (karena sintax nya menggunakan bahasa manusia).
Contoh dalam PASCAL : WRITE (untuk menampilkan kelayar)
Bahasa Pemrograman tingkat Tinggi terdiri dari dua kelompok Bahasa :
1. Procedure Oriented Language
*Scientific/Science (Masalah Ilmiah) à digunakan untuk memecahkan persoalan matematik/ alamiah.
Contoh : PASCAL, FORTRAN, BASIC
*Bussiness à digunakan untuk masalah bisnis
Contoh : Cobol, PL/1.
Komentar
Posting Komentar