Bahasa Pemrograman Fortran

Ikhtisar

Fortran, singkatan dari "Formula Translation," adalah bahasa pemrograman tingkat tinggi yang sangat cocok untuk aplikasi ilmiah dan rekayasa. Ini adalah salah satu bahasa pemrograman pertama yang dikembangkan untuk komputer elektronik dan telah berkembang secara signifikan sejak awalnya. Fortran memungkinkan manipulasi data array yang efisien dan mendukung perhitungan matematis kompleks, menjadikannya bahasa pilihan untuk prediksi cuaca numerik, fisika komputasi, dan bioinformatika, di antara bidang lainnya.

Aspek Historis

Penciptaan

Fortran dikembangkan pada tahun 1950-an oleh IBM sebagai bahasa yang dirancang untuk perhitungan numerik dan komputasi ilmiah. Versi pertama, Fortran I, dirilis pada tahun 1957. Ide inti adalah untuk menciptakan bahasa yang memungkinkan ilmuwan dan insinyur menulis program tanpa perlu mengetahui seluk-beluk perangkat keras yang mendasarinya.

Evolusi

Versi Fortran berikutnya diperkenalkan, masing-masing menambahkan fitur baru dan meningkatkan kegunaan. Fortran II segera menyusul, menambahkan fitur pemrograman terstruktur. Pada tahun 1966, Fortran IV diperkenalkan, yang menjadi standar industri. Fortran 77 (dirilis pada tahun 1978) menambahkan fitur seperti tipe data karakter dan meningkatkan kemampuan I/O.

Sejak tahun 1991, Fortran 90 memperkenalkan pemrograman array, pemrograman modular, rekursi, dan alokasi memori dinamis. Fortran 2003 dan Fortran 2008 lebih lanjut meningkatkan bahasa ini dengan fitur seperti Pemrograman Berorientasi Objek dan meningkatkan interoperabilitas dengan bahasa pemrograman C. Standar terbaru, Fortran 2018, membawa peningkatan lebih lanjut, termasuk kompatibilitas dan fungsionalitas yang lebih baik untuk pemrosesan paralel.

Keadaan Saat Ini

Fortran tetap digunakan secara aktif di banyak disiplin ilmiah dan rekayasa, didukung oleh kompiler modern seperti GNU Fortran (gfortran) dan Intel Fortran Compiler. Ini memiliki basis kode warisan yang besar, dan banyak pustaka ilmiah ditulis dalam Fortran, menjadikannya bahasa yang penting di bidang tertentu.

Fitur Sintaksis

Tipe Kuat

Fortran adalah bahasa yang memiliki tipe kuat yang memerlukan deklarasi eksplisit dari tipe variabel. Misalnya:

INTEGER :: i
REAL :: x
CHARACTER(len=10) :: name

Penanganan Array

Fortran unggul dalam menangani array, memungkinkan operasi pada seluruh array dengan sintaks yang sederhana.

REAL, DIMENSION(10) :: A
A = 2.0 * A  ! Mengalikan setiap elemen array A dengan 2

Struktur Kontrol

Fortran menyediakan struktur kontrol konvensional seperti loop dan pernyataan kondisional.

DO i = 1, 10
   IF (A(i) > 0) THEN
       PRINT *, 'Positif'
   END IF
END DO

Fungsi dan Subrutin

Fortran memungkinkan definisi fungsi dan subrutin untuk pemrograman modular.

FUNCTION square(x)
   REAL :: square
   REAL, INTENT(IN) :: x
   square = x * x
END FUNCTION square

Pengetikan Implicit

Secara default, Fortran memiliki aturan di mana variabel dengan nama yang dimulai dengan "I", "J", "K", "L", "M", atau "N" secara implisit dianggap INTEGER. Ini dapat diubah untuk kejelasan.

IMPLICIT NONE  ! Menonaktifkan pengetikan implisit
INTEGER :: I
REAL :: R

Loop Do-While

Fortran mendukung loop do-while untuk eksekusi berulang berdasarkan kondisi.

i = 1
DO WHILE (i <= 10)
   PRINT *, i
   i = i + 1
END DO

Tipe Turunan

Fortran memiliki tipe yang kuat yang didefinisikan pengguna yang dikenal sebagai tipe turunan, yang memungkinkan definisi data seperti struktur.

TYPE :: Person
   CHARACTER(len=20) :: name
   INTEGER :: age
END TYPE Person

TYPE(Person) :: p1

Dukungan Modul

Fortran mendukung modul untuk mengenkapsulasi data dan prosedur, mempromosikan penggunaan kembali kode dan organisasi.

MODULE myModule
   CONTAINS
   SUBROUTINE mySubroutine()
       ! Implementasi
   END SUBROUTINE
END MODULE

Penggunaan Pointer

Fortran mendukung pointer yang memfasilitasi manajemen memori dinamis, mirip dengan bahasa seperti C.

REAL, POINTER :: pA
ALLOCATE(pA(10))  ! Mengalokasikan array secara dinamis

Interoperabilitas

Fortran memiliki fitur yang menciptakan interoperabilitas dengan C, memungkinkan pemrograman campuran bahasa.

INTERFACE
   FUNCTION c_function(x) BIND(C, NAME="c_function")
       INTEGER(C_INT) :: c_function(INTEGER)
   END FUNCTION c_function
END INTERFACE

Alat Pengembang dan Runtime

Kompiler dan Interpreter

Kompiler Fortran yang paling populer termasuk:

Lingkungan Pengembangan Terintegrasi (IDE)

Meskipun Fortran tidak seumum bahasa lain yang diasosiasikan dengan IDE modern, beberapa IDE mendukungnya:

Membangun Proyek

Membangun proyek Fortran biasanya melibatkan pembuatan file sumber dengan ekstensi .f, .f90, atau .f95 dan mengompilasinya menggunakan kompiler Fortran. Perintah yang umum mungkin terlihat seperti:

gfortran -o my_program my_source.f90

Aplikasi Fortran

Fortran digunakan secara luas dalam komputasi ilmiah, prediksi cuaca numerik, pemodelan iklim, fisika komputasi, kimia komputasi, dan bioinformatika. Ini dikenal khususnya karena kinerjanya dalam perhitungan numerik berat dan simulasi.

Perbandingan dengan Bahasa Serupa

Kompetitor utama Fortran di bidang pemrograman ilmiah dan rekayasa termasuk:

Tips Translasi Sumber ke Sumber

Fortran memiliki beberapa alat translasi sumber ke sumber yang dapat membantu pengembang mengonversi kode warisan ke bahasa yang lebih kontemporer atau untuk mengoptimalkan kode yang ada. Beberapa alat termasuk:

Alat-alat ini memudahkan transisi dari versi Fortran yang lebih lama atau paradigma pemrograman yang sepenuhnya berbeda sambil membantu mempertahankan kinerja dan fungsionalitas.