Apa itu COBOL?

Latar munculnya COBOL sebagai bahasa pemrosesan data bisnis dan karakternya yang tetap relevan.

Daftar isi

COBOL adalah bahasa pemrograman yang lahir untuk memproses data bisnis dalam volume besar. Topik ini menelusuri latar kelahirannya pada 1959, standar yang berlaku saat ini, serta karakter bahasa yang membuatnya bertahan sampai sekarang. Pemaparan ditutup dengan satu program kecil yang dapat langsung dikompilasi dan dijalankan. Setelah topik ini dibaca, latar belakang bahasa yang dipraktikkan sepanjang jalur sudah terpetakan, mulai dari asal-usulnya sampai alasan sistem inti keuangan masih ditulis dengan bahasa ini.

Kelahiran dari kebutuhan pemrosesan data bisnis#

COBOL (COmmon Business-Oriented Language) lahir pada 1959 dari kebutuhan perusahaan dan instansi pemerintah Amerika Serikat akan satu bahasa pemrosesan data yang dapat berjalan pada komputer pabrikan mana pun. Pada masa itu setiap pabrikan menggunakan bahasanya sendiri, sehingga program yang dibangun dengan biaya besar tidak dapat dipindahkan ke mesin lain. Departemen Pertahanan Amerika Serikat mendorong pembentukan CODASYL (Conference on Data Systems Languages), konsorsium yang bertugas merumuskan spesifikasi bahasa pemrosesan data bersama. Spesifikasi pertama diterbitkan pada 1960, dan implementasi komersialnya menyusul pada tahun yang sama.

Pengaruh terbesar pada rancangan COBOL datang dari FLOW-MATIC, bahasa yang dikembangkan Grace Hopper pada awal 1950-an untuk komputer UNIVAC. FLOW-MATIC membuktikan bahwa instruksi program dapat ditulis dengan kata-kata bahasa Inggris yang dapat dibaca manusia, bukan hanya dengan kode mesin atau notasi matematis. Gagasan itu diteruskan ke perancangan COBOL, sehingga pernyataan seperti MOVE dan ADD terbaca hampir seperti kalimat biasa. Sifat inilah yang membuat program bisnis dapat ditinjau oleh orang yang bukan pemrogram, sesuatu yang jarang dimiliki bahasa lain pada zamannya.

Standar dan wajah COBOL saat ini#

ANSI memulai standardisasi COBOL pada 1968, dan ISO bersama IEC melanjutkannya. Standar terkininya adalah ISO/IEC 1989:2023 yang lazim disebut COBOL 2023. Kompatibilitas mundur dijaga dengan tekun. Compiler, yaitu program yang menerjemahkan kode sumber menjadi program yang dapat dieksekusi, dirancang tetap menerima program yang ditulis puluhan tahun lalu dengan perubahan kecil atau tanpa perubahan sama sekali. Kebijakan itulah yang membuat program lama tetap bernilai setiap kali bahasa diperbarui.

Dua compiler paling relevan bagi jalur ini adalah IBM Enterprise COBOL 6.x yang aktif di z/OS dan GnuCOBOL 3.2, compiler gratis dan open source yang dirilis pada 28 Juli 2023. GnuCOBOL menjadi cara praktis untuk belajar karena berjalan di Linux biasa tanpa mainframe. COBOL tidak memiliki sertifikasi formal yang diakui industri. Kemampuan seseorang dinilai dari penguasaan standar dan pengalaman membaca program nyata, bukan dari sertifikat.

Empat karakter yang menandai bahasa ini#

Empat karakter menandai COBOL sejak lahir, dan semuanya melayani pemrosesan data bisnis. Pertama, desain data mendahului logika. Klausa PIC (picture) menetapkan bentuk dan ukuran setiap field secara eksak, misalnya PIC 9(5)V99 yang menyatakan lima angka bulat dan dua angka desimal. Panjang record menjadi pasti sejak definisi, sehingga data pada berkas dan pada memori konsisten.

Kedua, aritmetika desimalnya eksak. Nilai uang disimpan sebagai deret angka desimal, bukan sebagai pecahan biner, sehingga 0.10 benar-benar bernilai 0.10 dan pembulatan tidak terakumulasi tanpa terlihat. Ketiga, berkas merupakan warga kelas satu. Verb READ, WRITE, dan REWRITE tersedia sebagai bagian inti bahasa tanpa pustaka tambahan, karena membaca dan memperbarui berkas berurutan adalah pekerjaan utama COBOL sejak awal. Keempat, prosanya menggunakan kata-kata Inggris yang mendekati bahasa alami, sehingga program berusia puluhan tahun tetap dapat dipahami oleh peninjaunya.

Satu program kecil sebagai wujud karakternya#

Program berikut merangkum tiga karakter sekaligus, yaitu desain data dengan PIC, aritmetika desimal eksak, dan penataan tampilan dengan picture hasil edit. Program menjumlahkan tiga catatan suhu harian dari sensor, yaitu alat pengukur yang merekam kondisi lingkungan, lalu menampilkan totalnya.

cobol rekap-suhu.cbl
       IDENTIFICATION DIVISION.
       PROGRAM-ID. REKAP-SUHU.
       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01 SUHU-PAGI   PIC 9(2)V99 VALUE 21.10.
       01 SUHU-SIANG  PIC 9(2)V99 VALUE 22.35.
       01 SUHU-MALAM  PIC 9(2)V99 VALUE 20.05.
       01 TOTAL-SUHU  PIC 9(3)V99 VALUE 0.
       01 TAMPILAN    PIC Z9.99.
       PROCEDURE DIVISION.
           ADD SUHU-PAGI SUHU-SIANG SUHU-MALAM GIVING TOTAL-SUHU.
           MOVE TOTAL-SUHU TO TAMPILAN.
           DISPLAY "Total suhu tercatat: " TAMPILAN " derajat".
           STOP RUN.
text Keluaran
Total suhu tercatat: 63.50 derajat

Field SUHU-PAGI didefinisikan dengan PIC 9(2)V99, yaitu dua angka di depan dan dua angka di belakang titik desimal. Huruf V hanya menandai posisi titik desimal dan tidak disimpan di memori. Pernyataan ADD menjumlahkan ketiga field ke TOTAL-SUHU dengan aritmetika desimal eksak, sehingga hasilnya persis 63.50 tanpa sisa pembulatan biner. Apabila TOTAL-SUHU ditampilkan apa adanya, GnuCOBOL menyisipkan titik pada posisi V dan mencetak 063.50 dengan nol di kiri. Pemindahan nilai ke TAMPILAN yang bertipe picture hasil edit Z9.99 menekan nol di kiri tersebut, sehingga keluarannya terbaca seperti pada blok Keluaran di atas.

Mengapa bahasa ini tetap dirawat#

Alasan keberlangsungan COBOL bersifat fungsional, bukan nostalgia. Sistem inti perbankan, asuransi, dan pemerintahan di banyak negara ditulis dengan COBOL dan menjalankan proses yang sama setiap hari selama puluhan tahun. Program-program lama yang terpasang dalam jumlah besar itu tidak mungkin diganti sekaligus, karena logika bisnis yang terakumulasi sangat kompleks dan telah diuji oleh penggunaan nyata. Menulis ulang seluruh sistem membawa biaya dan risiko yang jauh lebih besar daripada merawatnya.

Di sisi lain, bahasa ini tidak berhenti berkembang. Standar 2023 dan compiler modern menambah fitur baru sambil menjaga program lama tetap berjalan. Kondisi demikian menjadikan kemampuan membaca dan menulis COBOL tetap dicari, terutama untuk pekerjaan pemeliharaan dan modernisasi.

Ringkasan#

  • COBOL lahir pada 1959 lewat konsorsium CODASYL dengan pengaruh besar dari FLOW-MATIC karya Grace Hopper, dan standar terkininya adalah ISO/IEC 1989:2023 (COBOL 2023).
  • GnuCOBOL 3.2 dan IBM Enterprise COBOL 6.x mewakili dua dunia yang hidup berdampingan, yaitu latihan di Linux dan produksi di z/OS.
  • Karakter utamanya adalah desain data dengan PIC, aritmetika desimal eksak, berkas sebagai bagian inti bahasa, dan prosa Inggris yang dapat dibaca manusia.
  • Tidak ada sertifikasi COBOL formal, dan bahasa ini bertahan karena program-program lama pada sistem inti terus dirawat.

Referensi#