10 poin oleh GN⁺ 2026-03-16 | 12 komentar | Bagikan ke WhatsApp
  • Bahasa terkompilasi bertipe statis yang ditulis dengan kata kunci Hangul, menghasilkan biner native melalui LLVM IR
  • Menyediakan kompiler dan interpreter yang sama-sama diimplementasikan dengan Rust, serta mendukung build, eksekusi, REPL, dan LSP melalui CLI hgl
  • Semua kata kunci menggunakan bahasa Korea seperti 함수, 만약, 반복, 변수, dan nama variabel maupun fungsi juga dapat didefinisikan dalam Hangul
  • Memiliki fitur praktis bawaan seperti I/O file, JSON, HTTP, regex, tanggal/waktu, dan system call, serta menyertakan 18 contoh
  • Mengimplementasikan struktur ilmiah dan penyebaran budaya Hangul ke dalam bahasa pemrograman, sehingga mendapat perhatian sebagai upaya baru yang menggabungkan pembelajaran bahasa Korea dan coding

Gambaran umum bahasa Han

  • Han adalah bahasa terkompilasi bertipe statis yang ditulis dengan kata kunci bahasa Korea, dan menghasilkan biner native melalui LLVM IR
    • Mencakup toolchain kompiler dan tree-walking interpreter yang ditulis dengan Rust
    • Perintah hgl dapat digunakan untuk menjalankan interpreter, build, REPL, dan server LSP
  • Semua kata kunci terdiri dari Hangul, misalnya: 함수, 만약, 반복, 변수, 출력, dan lain-lain
  • Dengan menerapkan sistem aksara ilmiah Hangul ke dalam bahasa pemrograman, proyek ini bertujuan menggabungkan keindahan linguistik dan presisi teknis

Fitur utama

  • Dukungan kata kunci dan identifier Hangul: nama variabel, fungsi, struct, dan lainnya dapat ditulis dalam Hangul
  • Sistem tipe statis: menyediakan 5 tipe dasar yaitu 정수, 실수, 문자열, , 없음
  • Mode kompilasi dan interpreter: LLVM IR → clang → pembuatan biner atau eksekusi langsung
  • REPL dan server LSP: mendukung eksekusi interaktif dan code completion melalui perintah hgl repl, hgl lsp
  • Fitur bawaan
    • Array, struct, closure, pattern matching, exception handling, generic
    • File I/O, JSON, HTTP, regex, tanggal/waktu, system call
    • String berformat, hash map, fungsi matematika bawaan
  • Menyertakan 18 program contoh: Hello World, pemanggilan HTTP API, dan lainnya
Iklan

Instalasi dan eksekusi

  • Komponen wajib: Rust(1.70+), clang
  • Langkah instalasi
  • Menyediakan ekstensi VS Code: syntax highlighting dan dukungan LSP
  • Perintah CLI
    • hgl interpret <file.hgl> — menjalankan interpreter
    • hgl build <file.hgl> — mengompilasi biner native
    • hgl run <file.hgl> — langsung menjalankan setelah kompilasi
    • hgl repl — mode interaktif
    • hgl lsp — menjalankan server LSP

Status implementasi saat ini

  • Fitur yang berfungsi penuh
    • Tipe data, alur kontrol, fungsi, string, array, hash map, struct, penanganan error, pemeriksaan tipe
    • JSON, HTTP, regex, tanggal/waktu, sistem, file I/O, fungsi matematika, modul, generic
  • Fitur yang diimplementasikan sebagian
    • Saat hgl build, code generation untuk closure, string, dan method array masih belum selesai
    Iklan
  • Fitur yang belum diimplementasikan
    • Null safety (tidak ada tipe Option), pemrosesan asinkron/paralel, garbage collection, optimisasi tail recursion

Hangul dan pemrograman

  • Hangul adalah sistem aksara ilmiah yang merepresentasikan struktur fonologis secara visual, diciptakan oleh Raja Sejong pada tahun 1443
  • Han merefleksikan kejernihan struktural Hangul tersebut ke dalam sintaks kode
  • Secara global, lebih dari 16 juta orang sedang mempelajari bahasa Korea, dan Han menyediakan sarana belajar Hangul melalui coding
  • Contoh kata kunci
    • 함수(function), 만약(if), 반복(for), 반환(return), 변수(variable), 출력(print), dan lain-lain

Desain dan struktur

  • Pipeline kompiler berbasis Rust
    • Lexer → Parser → AST → Interpreter / CodeGen → LLVM IR → clang → Binary
    Iklan
  • Struktur proyek
    • src/ — kode inti kompiler dan interpreter
    • editors/vscode/ — ekstensi VS Code
    • Mencakup examples/, spec/, tests/
  • Alasan pemilihan desain
    • Menggunakan pembuatan IR berbasis teks alih-alih LLVM C API untuk menyederhanakan build
    • Interpreter berfokus pada eksekusi cepat, kompiler berfokus pada performa
    • Pattern matching dan memory safety Rust cocok untuk implementasi bahasa

Pengujian dan lisensi

  • Menjalankan 46 pengujian dengan cargo test (41 unit, 5 integrasi)
  • Dirilis dengan lisensi MIT

Makna kultural

  • Han adalah bahasa eksperimental yang menggabungkan keindahan Hangul dan presisi pemrograman
  • Menawarkan pendekatan baru yang meruntuhkan batas antara bahasa dan kode bagi pembelajar bahasa Korea maupun developer

12 komentar

 
runableapp 2026-03-17

Berkat ini saya mendapat informasi yang bermanfaat. GeekNews yang memilihkan kabar-kabar penting adalah kesenangan yang membuat saya berkunjung setiap hari. Saya sendiri saat ini sedang mengembangkan bahasa pemrograman berbahasa Korea, jadi saya memandang sangat positif upaya seperti ini terus berlanjut.

Sebagai seseorang yang telah lama tinggal di luar negeri sambil menyaksikan perubahan di Korea, saya selalu merasa prihatin melihat bahasa Inggris meresap secara berlebihan ke dalam kehidupan sehari-hari dan industri secara umum. Dialek Pangyo, nama apartemen yang sulit dipahami, menu ganjil seperti MSGR, dan papan toko yang dipenuhi bahasa Inggris tampak seperti menggerus daya hidup alami bahasa kita. Walaupun pendidikan dini telah menurunkan hambatan terhadap bahasa Inggris, sifat intuitif yang diberikan bahasa ibu tidak tergantikan. Seperti halnya papan beraksara Korea langsung mencolok di mata saat berada di luar negeri, otak kita menghabiskan energi paling sedikit saat memproses bahasa ibu.

print("Hello, world!");

keluarkan "Halo!"

Yang mana terasa lebih langsung tertangkap oleh mata?

AI memang sedang meruntuhkan hambatan bahasa, tetapi penelitian bahasa pemrograman berbahasa Korea adalah upaya untuk menghapus 'lapisan terjemahan' yang tidak perlu dari sistem berpikir kita demi memaksimalkan efisiensi otak. Wajar saja jika keluarkan terasa lebih intuitif daripada print. Karena logika universalitas atau pasar kerja, memang sulit untuk segera menjadi arus utama, tetapi saya berharap di masa depan akan lahir lebih banyak bahasa Korea yang semakin matang dan beragam untuk memperkaya ekosistem.

 
mhcoma 2026-03-16

Dalam Hangul, ya... saya tak bisa menghentikan hasrat untuk merusaknya.

 
coremaker 2026-03-16

Ini mengingatkan saya pada proyek Seed.

 
crawler 2026-03-17

Sepertinya beliau sudah lama berkecimpung di pekerjaan akuntansi, bukan pengembangan, tapi bisa membuat compiler dan menerima lebih dari 100 bintang di GitHub..
Benar-benar sudah datang era AI.

 
savvykang 2026-03-17

Memikirkan menulis kode dengan 비동기-대기 alih-alih async-await memang terasa lebih nyaman.

 
github88 2026-03-16

Yang penting untuk bahasa pemrograman itu adalah sifat serbagunanya..

 
m00nlygreat 2026-03-16

Lucu juga ya, reaksi Hacker News cukup ramah wkwk

 
nottiger 2026-03-16

Wah, keren sekali

 
bichi 2026-03-16

Halo, pagi yang kuat dan bersemangat!

 
sea715 2026-03-16

Wow

 
xguru 2026-03-16

Wah, senang juga melihat hal seperti ini di Hacker News. Terima kasih, Raja Sejong.

 
GN⁺ 2026-03-16
Komentar Hacker News
  • Jika tertarik dengan bahasa pemrograman berbahasa Korea, saya merekomendasikan bahasa fungsional ‘Nuri’
    Tautan GitHub Nuri
    Ini bukan sekadar menerjemahkan kata kunci, tetapi benar-benar bisa mencerminkan struktur tata bahasa Korea ke dalam kode
    Misalnya, jika menulis “membagi 10 dengan 5 lalu mencetaknya”, hasilnya akan menampilkan “2”
    Ada juga bahasa lain bernama ‘Yaksok’. Contoh kode permainan 2048 seluruhnya ditulis dalam bahasa Korea

    • Terima kasih atas masukannya. Saya menganggap ‘Nuri’ maupun ‘Yaksok’ sebagai bahasa yang masuk akal dan dirancang dengan baik, tetapi untuk saat ini saya fokus agar pengguna berbahasa Inggris bisa terlebih dahulu mencoba versi yang diterjemahkan ke Rust. Rasanya itu bisa membangun basis pengguna yang lebih besar
    • Saya hampir tidak tahu kata-kata Korea, tetapi saya penasaran apakah ‘Yaksok’ mungkin berasal dari akar kata yang sama dengan bahasa Jepang 約束(やくそく)
  • Menurut saya ini ide yang sangat keren. Hangul adalah sistem tulisan yang dirancang secara logis, jadi bisa dipelajari dalam setengah hari
    Jawaban StackExchange untuk belajar Hangul

    • Mnemonik seperti ini benar-benar berguna. Saya berencana menambahkannya juga ke panduan belajar bahasa Korea yang sedang saya gunakan (tolearnkorean.com)
      Hangul jumlah hurufnya mirip dengan alfabet Inggris sehingga cepat dipelajari, tetapi menghafal kosakatanya sedikit lebih sulit. Karena itu saya memakai Anki bersama aplikasi belajar bergaya gim yang saya buat sendiri
    • Ini pengetahuan yang mendalam sampai-sampai orang Korea sendiri pun sering tidak mengetahuinya. Saya akan menambahkan situs ini sebagai referensi GitHub. Senang sekali ada kontributor seperti ini
    • Saya baru saja menambahkan tautan itu ke bagian “Beauty of Hangul” di README
  • Sebagai penutur asli bahasa Korea, saya ingin berbagi pendapat singkat
    Kata benda diterjemahkan dengan alami, tetapi kata kerja imperatif dalam bahasa Inggris perlu perhatian saat dipindahkan ke bahasa Korea. Misalnya “find” bisa diubah menjadi ‘chatda’, ‘chatgi’, ‘chajeum’, dan sebagainya, tetapi bisa terasa janggal tergantung konteks
    Bentuk jamak juga menjadi masalah. Bahasa Inggris membedakan tunggal dan jamak dengan jelas, tetapi bahasa Korea tidak. Jika jamak dinyatakan secara eksplisit seperti “kata-kata”, justru sering terdengar tidak alami
    Jika bukan sekadar mengganti kata kunci, melainkan juga mempertimbangkan perbedaan struktural antara bahasa Inggris dan Korea, proyek ini tampaknya bisa menjadi jauh lebih kuat

  • Saat kuliah dan belajar ilmu komputer, saya merasa fakta bahwa bahasa pemrograman berbasis bahasa Inggris merupakan keuntungan besar bagi penutur bahasa Inggris
    Teman-teman mahasiswa internasional saya kesulitan lebih besar untuk belajar karena tidak terbiasa dengan bahasa Inggris. Karena itu candaan bahwa pemrograman seharusnya dihitung sebagai kredit bahasa asing terasa cukup lucu

    • Saya justru berpikir sebaliknya. Dulu ketika bahasa Inggris saya masih kurang, saya tetap belajar pemrograman secara otodidak. Pada akhirnya jumlah kata kunci bahasa itu tidak banyak, dan meskipun tidak tahu bahwa ‘int’ adalah singkatan dari integer, itu sama sekali bukan masalah
      Yang benar-benar sulit adalah mempelajari pemrogramannya sendiri. Namun, fakta bahwa topik tingkat lanjut dan dokumentasi hanya tersedia dalam bahasa Inggris memang menjadi hambatan besar bagi pelajar ESL
    • Di India juga, bahasa Inggris menjadi salah satu alasan besar pertumbuhan industri TI. Teman-teman yang menempuh pendidikan dalam bahasa daerah harus berusaha dua kali lebih keras di universitas untuk mengikuti buku teks berbahasa Inggris. Sangat disayangkan kenyataan bahwa hambatan bahasa berujung pada pemborosan talenta
    • Teman-teman saya yang bukan penutur bahasa Inggris juga mengatakan bahwa kata kunci bahkan tidak mencapai 1% dari tingkat kesulitan pemrograman. Nama variabel atau kelas sudah bisa ditulis dengan Unicode, jadi hampir tidak perlu diterjemahkan
    • Masuk akal jika bahasa Inggris menjadi standar global. Di banyak proyek, penggunaan bahasa Inggris memang terasa alami
    • Masalah sebenarnya bukan kata kunci, melainkan buku ajar, makalah, dan dokumentasi yang semuanya berbahasa Inggris. Menghafal beberapa kata kunci saja cukup 30 menit
  • Saya tidak tahu bahasa Korea, tetapi berkat utas ini saya belajar banyak wawasan linguistik
    Rancangan fonologis Hangul (tautan),
    karakteristik bentuk jamak dalam bahasa Korea (tautan),
    masalah kompresi token bahasa Korea pada tokenizer LLM (tautan),
    dan ritme tata letak keyboard Hangul yang memisahkan konsonan dan vokal menurut susunan tangan (tautan) terasa sangat menarik

  • Saya rasa upaya seperti ini bisa menyebabkan fragmentasi bahasa.
    Jika semua orang membuat bahasa pemrograman dalam bahasanya masing-masing, kolaborasi atau perekrutan akan menjadi lebih sulit, dan berbagi teknologi juga akan susah
    Secara pribadi saya merasa jika seluruh dunia memakai satu bahasa, perang dan kesalahpahaman akan berkurang. Tentu keberagaman budaya akan berkurang, tetapi efisiensi komunikasi akan meningkat

    • Berkarya dan bereksperimen sama sekali bukan hal bodoh. Penulis membuat bahasa ini sebagai upaya artistik, jadi mengkritiknya dari sudut pandang politik atau bisnis adalah sikap yang melenceng dari inti persoalan
    • Jadi maksudnya Anda ingin membuat bahasa pemrograman baru dalam Esperanto?
  • Pendekatan yang sekadar menerjemahkan kata kunci terasa menarik
    Seperti dalam contoh kode

    peongkeu tuseom(araei: moknok[jeongsu], tageuteu: jeongsu) -> moknok[jeongsu]:
    dongan mulai < akhir:
    

    Jika ditulis seperti ini, kode bisa menjadi lebih ringkas. Namun, kelebihan pembedaan huruf besar-kecil akan hilang
    Saya pernah mendengar bahwa terlepas dari kepadatan bahasa, kecepatan pemrosesan informasi kurang lebih serupa

    • Pada awal 2000-an pernah ada upaya menerjemahkan Python ke bahasa Mandarin
      Tulisan blog terkait
      Namun tidak berhasil. Sebab kebanyakan lingkungan komputer sudah menuntut input huruf Latin, dan menghafal beberapa kata kunci juga tidak sulit
    • Poin yang bagus. ‘Han’ memakai kata Korea yang nyata (hamsu, manyak, dan sebagainya), tetapi jika memakai kata serapan fonetik seperti ‘peongkeu’, ‘araei’ seperti dalam contoh, itu bisa terasa janggal bagi pengguna bahasa Korea
    • Scratch berbasis JSON sehingga mudah berganti bahasa. Tetapi alasan kebanyakan programmer tetap mempertahankan kata kunci bahasa Inggris adalah karena dokumentasi, pustaka, dan lingkungan kolaborasi semuanya berpusat pada bahasa Inggris
      Bahkan di era LLM, karena sebagian besar data pelatihan tetap berupa kode berbahasa Inggris, kemungkinan besar kode berbahasa Inggris masih akan lebih efisien
    • Dalam bahasa Jepang, pergantian mode input merepotkan sehingga tidak efisien untuk pemrograman. Hangul mungkin juga bisa memiliki masalah serupa
    • Contohnya menarik
  • Proyek yang keren. Saya pernah kuliah di universitas Korea sekitar 190 tahun yang lalu(!), dan sekarang hanya bisa bahasa Korea dasar, tetapi saat melihat contoh kodenya saya merasa seperti mempelajari kata-kata baru

  • Saya sangat menyukai proyek ini. Saat melihat sampel kode dan tidak memahami apa pun, saya jadi bisa berempati dengan seperti apa rasanya bagi pengembang non-Inggris ketika pertama kali melihat bahasa berbasis bahasa Inggris
    Lisp tetap saja negeri tanda kurung :-)

    • Hambatan yang sebenarnya bukan kata kunci, melainkan bahwa sebagian besar dokumentasi dan diskusi hanya ada dalam bahasa Inggris
    • Selama puluhan tahun, penggunaan bahasa Inggris memang masuk akal. Terima kasih atas komentarnya
  • Ini mengingatkan saya pada Easy Programming Language dari Tiongkok
    Tautan wiki EPL
    Sekitar 15 tahun lalu, banyak anak di Tiongkok pertama kali belajar pemrograman lewat bahasa ini