Jika Anda pernah bermain Roblox, menggunakan Wireshark untuk menganalisis jaringan, atau mengonfigurasi server dengan OpenResty (Nginx + Lua), maka Anda sudah berinteraksi dengan Lua، meski mungkin tidak menyadarinya.
Lua adalah bahasa pemrograman ringan, sangat fleksibel, dan mudah diintegrasikan ke dalam aplikasi lain. Dalam tutorial ini, kita akan menjelajahi dasar-dasar Lua, mulai dari filosofinya, kasus penggunaannya, hingga cara menjalankan skrip pertama Anda.
Lua (dibaca "LOO-ah", dari bahasa Portugis untuk "bulan") pertama kali dikembangkan pada tahun 1993 oleh tim riset di Pontifical Catholic University of Rio de Janeiro (PUC-Rio), Brasil. Tujuannya sederhana, yaitu untuk membuat bahasa scripting yang berukuran kecil, cepat, dan mudah diintegrasikan ke dalam aplikasi C/C++.
Beberapa ciri khas Lua:
Anda mungkin bertanya: "Kenapa tidak Python atau JavaScript saja?"
Jawabannya yaitu bergantung pada konteks penggunaan.
Lua unggul di situasi berikut:
| Konteks | Contoh Penggunaan |
|---|---|
| Game Development | Roblox (seluruh logika game ditulis dalam Lua), World of Warcraft (addon UI), Love2D (framework 2D), CryEngine |
| Sistem & Jaringan | Nginx dengan OpenResty (untuk API gateway, rate limiting), Wireshark (filter & protokol kustom) |
| Aplikasi Desktop | Adobe Lightroom (otomatisasi), Redis (scripting server-side) |
| Embedded Systems | Perangkat dengan memori terbatas yang butuh logika fleksibel |
Singkatnya, jika Anda ingin menambahkan logika yang dapat dikonfigurasi ke dalam aplikasi performa tinggi, tanpa overhead yang berat, Lua adalah pilihan ideal.
Sebelum menulis kode, mari pastikan Lua terpasang di sistem Anda.
sudo apt update
sudo apt install lua5.4
brew install lua
Atau gunakan Scoop:
scoop install lua
Setelah instalasi, cek versi:
lua -v
# Output contoh: Lua 5.4.6 Copyright (C) 1994-2023 Lua.org, PUC-Rio
Buat file bernama hello.lua dengan isi sebagai berikut.
-- hello.lua
print("Halo, Lua! 🌙")
Jalankan dari terminal.
lua hello.lua
Output:
Halo, Lua! 🌙
Catatan:
--adalah komentar satu baris di Lua.print()adalah fungsi bawaan untuk menampilkan teks.
Di artikel berikutnya, kita akan membahas sintaks dasar Lua: variabel, tipe data (number, string, boolean, nil), operator, dan cara menulis ekspresi yang bersih dan efisien.
Lua mungkin kecil, tapi jangan salah, di balik kesederhanaannya tersembunyi kekuatan besar. Dan perjalanan Anda dimulai sekarang. 🚀
Referensi: