Lua ?
Lua (/[invalid input: 'icon']ˈluː.ə/ loo-ə; dari bahasa Portugis: lua yang berarti "bulan") merupakan bahasa pemrograman ringkas yang
dirancang sebagai bahasa pemrograman dinamis berbasis skrip dengan semantik yang dapat dikembangkan atau ditambahkan. Sebagai bahasa skrip, Lua memiliki API dalam bahasa C yang relatif lebih sederhana dibandingkan bahasa skrip lainnya.
Lua ditulis pertama kali oleh Roberto Ierusalimschy, Luiz Henrique de Figueiredo, dan Waldemar Celes yang merupakan anggota Computer Graphics Technology Group (Tecgraf) pada universitas Pontifical Catholic, Rio de Janeiro, Brasil, pada tahun 1993.
Sebelumnya, sejak tahun 1977 hingga tahun 1992, pemerintah Brazil menerapkan kebijakan perdagangan yang membatasi perdagangan termasuk pertukaran baik perangkat keras ataupun perangkat lunak komputer. Dalam atmosfer yang demikian, banyak klien Tecgraf tidak mampu, baik secara politik maupun finansial, untuk membeli perangkat lunak dari luar. Alasan itulah yang mendorong Tecgraf untuk mengimplementaskan perangkat utilitas dasar yang dibutuhkan.
Secara historis, bahasa pemrograman Lua berawal dari bahasa pemrograman yang digunakan untuk pendeskripsian serta entri data, serta pengkonfigurasian suatu sistem yang masing-masing dikembangkan secara terpisah oleh tecgraf dari tahun 1992 hingga tahun 1993.[2] Tujuan pengembangan tersebut awalnya merupakan usaha untuk menambahkan fitur serta meningkatkan fleksibilitas atas dua proyek pengembangan perangkat lunak yang sedang mereka kerjakan saat itu. Namun terdapat kekurangan atas alur kontrol atas bahasa tersebut sehingga menumbuhkan ide untuk mengembangkannya lebih lanjut dengan fitur-fitur dasar yang lengkap sebagai sebuah bahasa pemrograman.
Kelebihan Bahasa Pemrograman Lua
Lua dalam penggunaan bahasanya memberikan beberapa kelebihan fasilitas-fasilitas diantaranya extensibility, simplicity, efisiensi, dan portabilitas. Dibawah ini merupakan penjelasan mengenai masing-masing fasilitas yang dimiliki bahasa pemrograman Lua tersebut.
1. Extensibility Extensibility Lua menarik perhatian sehingga banyak orang menganggap Lua bukan sebagai suatu bahasa, tetapi sebagai suatu perangkat untuk membangun bahasa-bahasa domain spesifik. Lua telah dirancang untuk diperluas, pada kode Lua dan kode eksternal C. Lua menerapkan banyak kemampuan dasarnya melalui fungsi-fungsi eksternal. Hal ini sangat mudah untuk menghubungkan Lua dengan bahasa-bahasa lain, seperti Fortran, Java, Smalltalk, Ada, bahkan dengan bahasa bahasa penulisan yang lain.
2. Simplicity Sederhana Lua adalah bahasa yang mudah dan sederhana. Lua mempunyai sedikit konsep. Kesederhanaan ini membuat Lua mudah dipelajari dan memperbesar suatu implementasi yang sederhana. Distribusinya yang lengkap source program, manual, biner-biner lebih untuk beberapa platform sesuai dengan floopy disk.
3. Efisiensi Lua mempunyai implementasi yang efisien. Benchmark yang mandiri menunjukkan Lua sebagai bahasa tercepat dalam dunia bahasa penulisan.
4. Portabilitas Lua dapat dijalankan di semua platform seperti: Android, NextStep, OS2, PlayStation II Sony, Mac OS-9 dan OS X, BeOS, MS-DOS, IBM, EPOC, PalmOS, MCF5206ELITE Evaluation Board, RISC OS, dan semua jenis Unix dan Windows. Source program untuk masing-masing platform hampir sama. Lua tidak menggunakan kumpulan kondisi untuk menyesuaikan kodenya kepada mesin-mesin yang berbeda sebagai gantinya.
Kekurangan Bahasa Pemrograman Lua
Bahasa pemrograman lua juga memiliki kekurangan diantaranya sebagai berikut :
1. Bahasa pemrograman Lua bersifat struktural dan bukan berbasis pemrograman berorientasi obyek.
2. Lua hanya mendukung beberapa jenis struktur data atomik seperti boolean, floating string dan srting. Jenis tipe atau struktur data lainnya seperti set, array atau list direpresentasikan dalam Lua melalui sebuah tipe data yaitu table.
Lua SDL ?
Lua-SDL2 adalah pengikatan portabel SDL2, ditulis dalam C murni untuk efisiensi. Ia mencoba untuk tetap sedekat mungkin dengan SDL, bertindak sebagai penjilidan sederhana daripada mencoba mendesain ulang interaksi antara programmer dan SDL.
Lua-SDL2 mengambil keuntungan penuh dari kemampuan berorientasi objek Lua sedapat mungkin, memungkinkan programmer untuk sepenuhnya memanfaatkan desain berorientasi objek bawaan SDL.
Lua-SDL2 dirancang agar kompatibel mungkin. Perpustakaan memiliki dukungan untuk semua fitur SDL2 terbaru, sementara masih mengkompilasi dengan SDL 2.0.1.
Jika perpustakaan dikompilasi dengan rilis titik yang lebih baru dari SDL dari apa yang tercantum di sini, perpustakaan harus tetap berfungsi, hanya tanpa akses ke fitur yang lebih baru.
Lua-SDL2 kompatibel dengan:
* Lua 5.1, 5.2, 5.3, or LuaJIT
* SDL 2.0.1 and greater
Installing
Jika Anda memiliki LuaRocks diinstal,
$ luarocks install lua-sdl2
Langkah-Langkah Menginstall Lua
Setelah mengenal apakah bahasa Lua itu, maka langkah selanjutnya adalah bagaimana malakukan pengaturan agar Sublime Text dapat dipergunakan untuk mempermudah proses pengerjaan program dalam bahasa Lua.
Sebagaimana plugin atau paket lain (semisal untuk bahasa Python), instalasi paket-paket tambahan yang diperlukan untuk bahasa Lua ini akan lebih mudah dilakukan jika menggunakan Package Control. Jika belum ter-install maka cara instalasi Package Control bisa dibaca dan diikuti pada link ini.
Dua sumber informasi yang baik yang dapat dipakai untuk memandu instalasi paket untuk Lua adalah:
How do you execute a lua file in sublime text 3?
Sublime Text
Berikut adalah paket-paket yang saya instal di Sublime Text untuk pemrograman dalam bahasa Lua:
LuaLove is a package for Sublime Text 2/3 with support for the Love2D API. It is based on SublimeLove, LuaSublime, and lua_snippet.
LuaExtended is a syntax definition and snippet package for Sublime Text 3.
Meskipun tertulis untuk ST 3, paket ini juga dapat berfungsi di ST 2.
Paket ini berfungsi untuk menyediakan interpreter internal sehingga pengguna dapat mencoba kode program secara interaktif. Sama seperti penggunaannya untuk bahasa Python , paket ini juga berfungsi baik untuk bahasa Lua.
Terakhir, kita dapat mencoba kode-kode contoh dari link pada bagian pertama artikel ini dengan Sublime Text yang telah konfigurasi sebagaimana pada bagian dua.
Sumber :
https://sunupradana.info/tkr/2017/06/27/sublime-text-lua/
https://github.com/Tangent128/luasdl2
https://text-id.123dok.com/document/wq2656rez-kelebihan-bahasa-pemrograman-lua-kekurangan-bahasa-pemrograman-lua.html