revo - Bahasa Dinamis untuk Kesenangan Pemrograman
(github.com/if-not-nil)- Bahasa bertipe dinamis yang ditulis dengan Zig, mengadopsi struktur "everything is something" di mana semuanya mengembalikan nilai
- Mendukung model konkurensi yang mulus, di mana kode blocking dapat diubah menjadi non-blocking hanya dengan menambahkan
spawndi depannya - Nilai dapat ditransformasikan secara berurutan dengan operator pipe (
|>), dan_digunakan untuk merujuk nilai sebelumnya- Contoh:
"hello" |> _:upper() |> _:sub(1, 2)
- Contoh:
- Mendukung pattern matching dan result type, dengan fungsi mengembalikan bentuk
(:ok, value)/(:err, reason)lalu ditangani dengan percabanganmatch - Memiliki pengujian first-class bawaan yang hanya dikompilasi dan dijalankan saat flag
--testditambahkan, menyediakan bloktesttunggal dan bloksuiteberkelompok - Menyediakan API embedding yang memungkinkan penyisipan langsung ke kode C melalui
revo.herevo_vm_create,erevo_compile,erevo_run,erevo_eval, dll.
- Menyertakan server LSP revolt yang menangani diagnostic/go-to-definition/hover/referensi/simbol
- Dibundel secara default dalam build rilis dan dijalankan dengan
revo --lsp
- Dibundel secara default dalam build rilis dan dijalankan dengan
- Menyediakan backend REPL bawaan isocline. Mendukung input multi-baris/penyelesaian tab/pencarian riwayat
- Versi Windows masih belum lengkap: backend asinkron dan line editor penuh belum didukung
- Lisensi MIT
Belum ada komentar.