Minggu, 15 Juni 2025

Apa Itu Pearl?

Pearl adalah bahasa pemrograman eksperimental yang saya kembangkan menggunakan JavaScript. Pearl mencoba menghadirkan cara berpikir pemrograman yang lebih alami dan penutur Bahasa Indonesia.

Pearl bukan hanya sekadar proyek iseng, tapi juga eksperimen desain bahasa - bagaimana kalau kita membuat bahasa pemrograman yang tidak perlu dengan kata "if", "while", atau "print", namun jika, ulangi, dan tampilkan?

Dibalik itu semua, Pearl adalah interpreter baris-demi-baris yang memetakan setiap instruksi berbasis token ke modul modular seperti masukan.js, jika.js, ulangi.js, dan lainnya.


Kenapa Saya Membuat Pearl?

Motivasi sederhananya:

  • Bahasa lokal, akses lebih mudah. Banyak pemula kesulitan belajar karena sintaks terasa asing. Pearl menjembatani itu.
  • Eksperimen desain. Saya ingin tahu, bagaimana pengalaman "membuat bahasa sendiri" - dari tokenizer, memory, kontrol alur, hingga REPL.
  • Modularitas. Dengan sistem modular berbasis Node.js, Pearl mudah dikembangkan, diajarkan, atau di-fork.


Contoh Kode Pearl

masukkan :nama:
tampilkan "Halo," + :nama:

Penjelasan:
:nama: adalah data nilai yang Anda masukkan untuk mencetak di tampilkan oleh :nama: itu sendiri.


Struktur Internal Pearl

Setiap baris dalam Pearl diproses dengan sistem seperti ini:

  1. Tokenizer: memecah baris menjadi token (tokenize.js)
  2. Executor: token pertama (misalnya tampilkan) dipetakan ke modul (tampilkan.js)
  3. Interpreter: modul menangani logika berdasarkan token dan memory.
Pearl menyimpan semua variabel dan objek disebuah memori bersama global yaitu memory.js dan menangani struktur data kompleks seperti:

  • Daftar (array) dan daftar bersarang
  • Dikta (object)
  • Kelas dan instance: mendukung atribut dan tipe khusus


Fitur unggulan Pearl

  • Bahasa alami: semua perintah dalam Bahasa Indonesia, beberapa sedikit persen bahasa Inggris.
  • Modular: setiap instruksi diatur di file berbeda.
  • REPL dan File Mode
  • Struktur data lengkap: list, objek, kelas
  • Akses data kompleks


Cara Menjalankan Pearl

1. Klon atau gandakan repositori:

git clone https://github.com/aflacake/pearl
cd pearl
npm install

2. Buat file .pearl

masukkan :nama:
tampilkan "Selamat datang, " + nama

3. Jalankan

node index.js nama_file_kamu.pearl

atau masuk ke REPL:

node index.js


Ingin Lihat Isi Memori?

Pearl punya perintah khusus untuk debugging:

tampilkan memory

Ini akan mencetak isi memory dengan struktur penuh cocok untuk melihat state saat runtime.


Yuk Kontribusi!

Pearl masih dalam tahap pengembangan dan terbuka untuk:

  • Saran fitur
  • Perbaikan bug
  • Kolaborasi desain sintaks
  • Pull request modul baru
Kalau kamu tertarik dengan desain bahasa, sistem interpreter, atau mengajar pemrograman lokal, dengan senang hati saya bisa berdiskusi denganmu.

Jangan ragu untuk memberi feedback, atau clone dan coba sendiri. Siapa tahu kamu dapat berkontribusi di Pearl berikutnya!

#programming #language-design #interpreter #javascript #opensource #indonesia




Tidak ada komentar:

Posting Komentar

Postingan lainnya

Tugas Menganalisa Tokopedia Sebagai Copywriting

Tautan: Tautan menuju ke analisa produknya:  https://www.instagram.com/p/DLr3u6sz9WG/ Jawaban: Headline: "Bagi-bagi Kopi Calf Gratis...