Kamis, 15 Oktober 2026
08:20 WIB
TERKINI
Hiburan Daftar Film Paling Dipuji di IMDb 2026: Dari Epik Kolosal hingga Aksi Pahlawan Super Lampung Gubernur Lampung Kembali Raih Grand Baznas Awards 2026, Diakui Dukungan Zakat Terbaik Bandar Lampung Transformasi Pengelolaan Sampah Bandar Lampung: PSEL Beroperasi, TPA Bakung Tutup Permanen Regional Polda Sumsel Buru Aktor Intelektual Penyerang Jurnalis dan Mahasiswa Saat Demo Metro Relasi Kuasa Timpang Pemicu KDRT: Dosen Unila Soroti Kasus Suami Bakar Istri Bandar Lampung BMKG: 471 Titik Panas Terdeteksi di Lampung, 22 Di antaranya Berisiko Tinggi Bandar Lampung Polda Lampung Dalami Kasus Penggelapan Mobil Libatkan Anggota Dewan, Rugi Rp1,1 M Bandar Lampung Lampung Perketat Pengawasan Solar Subsidi: Satpol PP Cek STNK Kendaraan Besar di SPBU Ekonomi Dan Bisnis Harga Emas Antam Merosot Rp20 Ribu, Cek Rincian Lengkap per Gram Hari Ini Lampung Prakiraan Cuaca Lampung 14 Oktober 2026: Cerah Berawan dengan Potensi Hujan di Tanggamus Hiburan Daftar Film Paling Dipuji di IMDb 2026: Dari Epik Kolosal hingga Aksi Pahlawan Super Lampung Gubernur Lampung Kembali Raih Grand Baznas Awards 2026, Diakui Dukungan Zakat Terbaik Bandar Lampung Transformasi Pengelolaan Sampah Bandar Lampung: PSEL Beroperasi, TPA Bakung Tutup Permanen Regional Polda Sumsel Buru Aktor Intelektual Penyerang Jurnalis dan Mahasiswa Saat Demo Metro Relasi Kuasa Timpang Pemicu KDRT: Dosen Unila Soroti Kasus Suami Bakar Istri Bandar Lampung BMKG: 471 Titik Panas Terdeteksi di Lampung, 22 Di antaranya Berisiko Tinggi Bandar Lampung Polda Lampung Dalami Kasus Penggelapan Mobil Libatkan Anggota Dewan, Rugi Rp1,1 M Bandar Lampung Lampung Perketat Pengawasan Solar Subsidi: Satpol PP Cek STNK Kendaraan Besar di SPBU Ekonomi Dan Bisnis Harga Emas Antam Merosot Rp20 Ribu, Cek Rincian Lengkap per Gram Hari Ini Lampung Prakiraan Cuaca Lampung 14 Oktober 2026: Cerah Berawan dengan Potensi Hujan di Tanggamus
Scala (bahasa pemrograman)

Scala (bahasa pemrograman)

Bagikan:
Artikel ini memiliki beberapa masalah. Tolong bantu memperbaikinya atau diskusikan masalah-masalah ini di halaman pembicaraannya. (Pelajari bagaimana dan kapan saat yang tepat untuk menghapus templat pesan ini)
Artikel ini membutuhkan penyuntingan lebih lanjut mengenai tata bahasa, gaya penulisan, hubungan antarparagraf, nada penulisan, atau ejaan. Anda dapat membantu untuk menyuntingnya.
Artikel ini membutuhkan lebih banyak rujukan. Mohon bantu kami mengembangkan artikel ini dengan cara menambahkan rujukan ke sumber tepercaya. Pernyataan tak bersumber bisa saja dipertentangkan dan dihapus.
Cari sumber: "Scala" bahasa pemrograman – berita · surat kabar · buku · cendekiawan · JSTOR
Artikel ini perlu dikembangkan agar dapat memenuhi kriteria sebagai entri Wikipedia.
Bantulah untuk mengembangkan artikel ini. Jika tidak dikembangkan, artikel ini akan dihapus.
(Pelajari cara dan kapan saatnya untuk menghapus pesan templat ini)
Scala
250px-Scala-full-color.svg.png?utm_source=id.wikipedia.org&utm_campaign=parser&utm_content=thumbnail
Paradigmamulti paradigma: concurrent, fungsional, imperatif, berorientasi objek
Dirancang olehMartin Odersky
PengembangProgramming Methods Laboratory di École Polytechnique Fédérale de Lausanne
Pertama kali muncul20 Januari 2004
LisensiLisensi Apache
Ekstensi nama berkas.scala, .sc
Situs webscala-lang.org

Scala merupakan bahasa pemrograman umum (general purpose) yang mendukung pemrograman berorientasi objek dan pemrograman fungsional. Secara umum, tujuan dibuatnya Scala adalah untuk mengkritisi bahasa pemrograman Java.

Kode sumber Scala dibuat agar dapat dikompilasi dengan Bytecode Java, sehingga mengakibatkan eksekusi kode berjalan pada mesin virtual Java. Scala menyediakan interoperabilitas bahasa dengan Java, sehingga perpustakaan yang ditulis dalam dua bahasa ini dapat dirujuk langsung di Scala atau kode Java.[1] Seperti Java, Scala adalah merupakan bahasa yang berorientasi objek, dan menggunakan sintaks-kriting mengingatkan pada bahasa pemrograman C. Tidak seperti Java, Scala memiliki banyak fitur dari pemrograman fungsional bahasa seperti Scheme, Standard ML dan Haskell, termasuk currying, type inference, ketetapan, evaluasi malas, dan pencocokan pola. Ini juga memiliki lanjutan jenis sistem pendukung jenis data aljabar, kovarian dan kontravarian, jenis perintah tinggi (tapi tidak jenis lebih tinggi-peringkat), dan jenis anonim. Fitur lain dari Scala tidak hadir di Java termasuk operator overloading, optional parameter, parameter bernama, string baku, dan tidak ada pengecualian terperiksa.

Etimologi

Nama Scala adalah lakuran dari "scalable" dan "language", untuk menggambarkan bahwa bahasa ini dirancang supaya berkembang sesuai keperluan penggunanya.[2]

Sejarah

Desain Scala dimulai pada 2001 di École Polytechnique Fédérale de Lausanne (EPFL) oleh Martin Odersky. Hal ini diikuti dari bekerja pada Corong, sebuah bahasa pemrograman yang menggabungkan ide-ide dari pemrograman fungsional dan Petri nets.[3] Odersky sebelumnya bekerja pada Generic Javadan javac, Sun Java compiler.

Setelah internal yang rilis pada akhir 2003, Scala dirilis ke publik pada awal tahun 2004 di platform Java,[4] dan pada .NET Framework pada bulan juni 2004.[5] versi kedua (v2.0) diikuti pada bulan Maret 2006.NET dukungan resmi turun pada tahun 2012.[6]

Meskipun Scala memiliki dukungan yang luas untuk pemrograman fungsional dari awal, Sebagian besar Java tetap berorientasi objek bahasa sampai masuknya ekspresi lambda dengan Java 8 pada 2014.

Platform dan lisensi

Scala berjalan pada platform Java (Java virtual machine) dan kompatibel dengan yang ada program Java. Sebagai aplikasi Android yang biasanya ditulis di Java dan diterjemahkan dari bytecode Java ke bytecode Dalvik (yang selanjutnya dapat diterjemahkan ke asli kode mesin selama instalasi) ketika dikemas, kompatibilitas Scala dengan Java memungkinkan pengembangan Android, lebih jadi ketika fungsional pendekatan yang lebih disukai.[7]

Scala juga dapat dikompilasi ke JavaScript, memungkinkan pengembang menulis program Scala yang dapat berjalan di peramban web.[8]

Contoh

Contoh "Hello World"

Program "Hello World" yang ditulis pada bahasa pemrograman Scala memiliki bentuk:

objectHelloWorldextendsApp{
println("Hello, World!")
}

Tidak seperti aplikasi pemrograman tunggal dari Java, bahasa pemrograman ini tidak membutuhkan suatu deklarasi kelas statik; sebuah objek tunggal dibuat dengan menambahkan kata kunci object di dalamnya.

Ketika pengguna menyimpan dengan nama HelloWorld.scala, pengguna dapat menjalankan kompilasi dengan perintah

$ scalac HelloWorld.scala

dan dapat dijalankan dengan perintah:

$ scala HelloWorld

Konsep ini mirip dengan proses kompilasi dan menjalankan kode Java, karena model kompilasi dan eksekusi Scala identik dengan Java, sehingga kompatibel dengan alat build Java seperti Apache Ant.

Referensi

  1. ↑ "Frequently Asked Questions – Java Interoperability". scala-lang.org. Diakses tanggal 2015-02-06.
  2. ↑ Loverdo, Christos (2010). Steps in Scala: An Introduction to Object-Functional Programming. Cambridge University Press. hlm. xiii. ISBN 978-1-139-49094-8. Diakses tanggal 31 Juli 2014.{{cite book}}: Pemeliharaan CS1: Tanggal diterjemahkan otomatis (link)
  3. ↑ Martin Odersky, "A Brief History of Scala", Artima.com weblogs, June 9, 2006
  4. ↑ Odersky, M.; Rompf, T. (2014). "Unifying functional and object-oriented programming with Scala". Communications of the ACM. 57 (4): 76. doi:10.1145/2591013.
  5. ↑ Martin Odersky, "The Scala Language Specification Version 2.7"
  6. ↑ Expunged the .net backend. by paulp · Pull Request #1718 · scala/scala · GitHub.
  7. ↑ "Scala on Android". Diakses tanggal 8 Juni 2016.{{cite web}}: Pemeliharaan CS1: Tanggal diterjemahkan otomatis (link)
  8. ↑ "Scala Js Is No Longer Experimental | The Scala Programming Language". Scala-lang.org. Diarsipkan dari asli tanggal 2015-10-02. Diakses tanggal 28 Oktober 2015.{{cite web}}: Pemeliharaan CS1: Tanggal diterjemahkan otomatis (link)

Pranala luar

Konten disalin dari Wikipedia Bahasa Indonesia (lisensi CC BY-SA) Lihat versi asli di Wikipedia

Rekomendasi Pilihan