我們會閱讀每一則回饋,並非常重視您的意見。

欲查看所有可用的限定詞,請參考我們的文件。

Han是一款以韓文關鍵字、類型、內建函式及標準函式庫為特色的通用編譯語言,整體以Rust語言撰寫。

Museum as Code(線上網站)— 韓國國立博物館使用Han重建。56個目錄條目和10個主頁面皆為真實的.hgl原始碼檔案;網站上的每個程式碼區塊都能在hgl直譯器中不經修改直接執行。這是韓文作為語法從簡單範例擴展到完整內容網站的代表性示範。

Han不僅僅是一種程式語言,它是一項包含三大目標的實驗:

1. 韓文字母是有史以來最具科學設計的書寫系統之一。每個字元都編碼了發音時嘴型與舌位的精確形狀。母音由三個符號組成:天(·)、地(ㅡ)與人(ㅣ)。它是為清晰度而設計,而非歷史演變的產物。Han探問:當程式碼以一種被設計而非演化的文字書寫時,會是什麼樣貌?(發明於1443年—世宗大王)

2. AI時代的韓文程式碼—BPE優化。大型語言模型(LLM)多以英語為主訓練資料。BPE分詞器將韓文字視為稀有字元,會將「함수」拆成多個位元組級別的token,而「function」則為單一token。網路上韓文程式碼越多(包含程式庫、文件、範例),未來的分詞器就能更好地表示韓文。Han是對此語料庫的小小貢獻。

3. 少數語言成為一級語法。韓文使用人口約八千萬,但幾乎沒有程式語言使用韓文作為語法。Han是一項實驗:當少數語言成為編譯器的語法時,會發生什麼事?它能走多遠?

Han是一款靜態型別、編譯型程式語言,關鍵字、型別名稱、50多個內建函式及標準函式庫方法皆以韓文書寫,錯誤訊息也全為韓文。算術、比較與賦值運算子遵循C/Rust慣例。它透過LLVM IR編譯成原生二進位檔,並附帶樹狀結構直譯器以即時執行。整個編譯器工具鏈完全以Rust撰寫。

可從crates.io安裝Rust套件,套件名稱為han-lang;語言名稱為Han,安裝後的CLI指令為hgl。

條件判斷採用韓文預設的만약 조건 이면 { }形式。

更多範例—包含字數統計、檔案輸入輸出、JSON、HTTP、正則表達式及完整10步驟教學系列—可在examples/目錄及文件中的範例索引找到。

此安裝會全域安裝hgl,並在偵測到VS Code時自動設定VS Code擴充功能(語法高亮與LSP)。

或可從crates.io安裝已發佈的Rust套件:

crates.io上的套件名稱為han-lang,以避免命名歧義。語言仍稱Han,安裝後的指令仍為hgl。

預設的crates.io安裝不包含Python,因此hgl可在不需本地Python動態庫的情況下執行。若需內建Python互操作,請使用cargo install han-lang --features python安裝。

cargo test涵蓋詞法分析器、語法解析器、AST、直譯器、型別檢查器、編譯後端,以及閉包捕捉、結構體實作方法、元組與SOV解析等整合情境。

請參閱CONTRIBUTING.md了解開發環境設定、分支慣例及PR檢查清單。

Han—韓文字母之美與程式碼精確性的結合。

一款以韓文關鍵字編寫、採用Rust實現的編譯型程式語言。